-# TODO:
-# - python 3 and python 2 subpackages?
-# - subpackage *_plperl and *_plpython contribs?
-# - think about pg_upgrade integration (sysconfig variable to allow upgrade from 8.3+ without dump/restore?)
-# create postgresqlM.N packages with parts of old pgsql required by pg_upgrade
-# - test init script (db initialization)
#
# Conditional build:
%bcond_without tests # disable testing
#
%define beta %{nil}
-%define mver 10
+%define pgver 10
+%define pgminver 5
Summary: PostgreSQL Data Base Management System
Summary(de.UTF-8): PostgreSQL Datenbankverwaltungssystem
Summary(tr.UTF-8): Veri Tabanı Yönetim Sistemi
Summary(uk.UTF-8): PostgreSQL - система керування базами даних
Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件
-Name: postgresql
-Version: %{mver}.5
-Release: 1
+Name: postgresql%{pgver}
+Version: %{pgver}.%{pgminver}
+Release: 1.1
License: BSD
Group: Applications/Databases
-Source0: http://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2
+Source0: http://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2
# Source0-md5: a5fe5fdff2d6c28f65601398be0950df
-Source1: %{name}.init
+Source1: postgresql.init
Source2: pgsql-Database-HOWTO-html.tar.gz
# Source2-md5: 5b656ddf1db41965761f85204a14398e
-Source3: %{name}.sysconfig
-Patch0: %{name}-conf.patch
-Patch1: %{name}-absolute_dbpaths.patch
-Patch2: %{name}-ecpg-includedir.patch
-
-Patch4: %{name}-disable_horology_test.patch
-Patch5: %{name}-heimdal.patch
-Patch6: %{name}-link.patch
+Source3: postgresql.sysconfig
+Patch0: postgresql-conf.patch
+Patch1: postgresql-absolute_dbpaths.patch
+Patch2: postgresql-ecpg-includedir.patch
+Patch3: per-version-dirs.patch
+Patch4: postgresql-disable_horology_test.patch
+Patch5: postgresql-heimdal.patch
+Patch6: postgresql-link.patch
URL: http://www.postgresql.org/
BuildRequires: autoconf >= 2.69
BuildRequires: automake
Requires(triggerpostun): /bin/id
Requires(triggerpostun): /usr/sbin/usermod
Requires: %{name}-clients >= %{version}-%{release}
-Requires: %{name}-libs = %{version}-%{release}
+Requires: postgresql-libs = %{version}-%{release}
Requires: rc-scripts >= 0.4.3.0
Requires: tzdata
Obsoletes: postgresql-module-plpgsql
Obsoletes: postgresql-test
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _pgmoduledir %{_libdir}/postgresql
-%define _pgsqldir %{_datadir}/postgresql/extension
+%define pgsqldatadir %{_datadir}/postgresql/%{pgver}
+%define pgsqllibdir %{_libdir}/postgresql/%{pgver}
+%define moduledir %{pgsqllibdir}/lib
+%define extensiondir %{pgsqldatadir}/extension
%define _ulibdir /usr/lib
PostgreSQL runs on Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD,
and most flavours of Unix.
-%description -l de.UTF-8
-PostgreSQL Datenbank-Managementsystem (früher als Postgres, dann als
-Postgres95 bekannt).
-
-PostgreSQL ist eine Verbesserung des POSTGRES-DB-Managementsystems,
-ein DBMS-Forschungsprototyp der nächsten Generation. Während es das
-leistungsfähige Datenmodell und die reichhaltigen Datentypen von
-POSTGRES beibehält, ersetzt es die PostQuel-Abfragesprache durch ein
-Subset von SQL. PostgreSQL ist gratis, der gesamte Quellcode ist
-verfügbar.
-
-Ein Team von Internet-Entwicklern befaßt sich mit PostgreSQL. Sie alle
-sind auf der PostgreSQL-Entwickleradreßliste. Koordinator ist Marc G.
-Fournier (scrappy@postgreSQL.org). Das Team ist verantwortlich für
-alle aktuellen und künftigen Entwicklungen von PostgreSQL.
-
-Die Autoren von PostgreSQL 1.01 waren Andrew Yu und Jolly Chen.
-Zahlreiche andere haben zur Portierung, zum Testen, Debugging und zur
-Verbesserung des Code beigetragen. Den Original-Postgres-Code, von dem
-sich PostgreSQL ableitet, verdanken wir der Arbeit vieler Doktoranden,
-Studenten und Programmierern unter der Leitung von Professor Michael
-Stonebraker an der University of California, Berkeley.
-
-Der ursprüngliche Name war Postgres. Als 1995 SQL-Funktionalität
-hinzukam, wurde der Name in Postgres95 geändert. Ende 1996 schließlich
-entschied man sich für PostgreSQL.
-
-PostgreSQL läuft auf Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD
-und den meisten Unix-Systemen.
-
-%description -l es.UTF-8
-Administrador de Banco de Datos PostgreSQL (conocido anteriormente
-como Postgres, y después como Postgres95). PostgreSQL es una
-continuación mejorada del Sistema Administrador de Banco de Datos
-POSTGRES, que era un prototipo de pesquisa para un SGBD de nueva
-generación. Mientras PostgreSQL mantiene el potente modelo de datos y
-los varios tipos de datos del POSTGRES, substituye el lenguaje de
-consulta PostQuel por un subconjunto extendido de la SQL. PostgreSQL
-es libre y tiene los fuentes disponibles. El desarrollo del PostgreSQL
-se ejecutado por un equipo de estudiosos de Internet, todos suscritos
-en la lista de desarrollo del PostgreSQL. El coordinador actual es
-Marc G. Fournier (scrappy@postgreSQL.org). Este equipo es ahora
-responsable por el desarrollo actual y futuro del PostgreSQL.
-
-%description -l fr.UTF-8
-Système de gestion de bases de données PostgreSQL (D'abord nommé
-Postgres, puis Postgres95).
-
-PostgreSQL est une amélioration du système de gestion de bases de
-données POSTGRES, un prototype de recherche de la génération suivant
-DBMS. Tout en conservant le puissant modèle de donnée de et les types
-de donée riches de Postgres, il remplace le langage de requêtes de
-Postgres par un sous ensemble etendu de commandes SQL. PosrgreSQL est
-libre, et ses sources sont disponibles.
-
-Le développement de PostgreSQL est actuellement réalisé via internet
-parune équipe de développeurs inscrits sur la mailing-list de
-développement de PostgreSQL. Le coordinateur actuel est Marc G
-Fournier (scrappy@postgreSQL.org). Cette équipe est responsable du
-développemen actuel et à venir de PostgreSQL.
-
-Les auteurs de PostgreSQL 1.01 étaient Andrew Yu et Jolly Chen.
-Beaucoup d'autres ont contribué au portage, au test, au débogage et à
-l'amélioration du code. Le code original de Postgres, duquel
-PostgreSQL est dérivé, a été l'oeuvre d'étudiants de haut niveau, de
-moins haut niveau, et de programmeurs travaillant sous la direction du
-professeur Michael Stonebraker à l'université de Berkeley Californie.
-
-Le nom original du logiciel était Postgres. Quand les fonctionnalitées
-SQL furent ajoutées en 1995, son nom est devenu Postgres95. Il a été
-rebaptisé PostgreSQL en 1996.
-
-PostgreSQL tourne sur Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD,
-et la plupart des Unix.
-
%description -l pl.UTF-8
System Zarządzania Bazą Danych PostgreSQL (dawniej znany jako
Postgres, następnie jako Postgres95).
PostgreSQL może być uruchomiony pod następującymi systemami: Solaris,
SunOS, HPUX, AIX, Linux, Irix, FreeBSD i innymi systemami uniksowymi.
-%description -l pt_BR.UTF-8
-Gerenciador de Banco de Dados PostgreSQL (conhecido anteriormente como
-Postgres, e depois como Postgres95).
-
-O PostgreSQL é uma continuação melhorada do Sistema Gerenciador de
-Banco de Dados POSTGRES, que era um protótipo de pesquisa para um SGBD
-de nova geração. Enquanto o PostgreSQL mantém o poderoso modelo de
-dados e os vários tipos de dados do POSTGRES, ele substitui a
-linguagem de consulta PostQuel por um subconjunto estendido da SQL. O
-PostgreSQL é livre e tem os fontes disponíveis.
-
-O desenvolvimento do PostgreSQL está sendo executado por uma equipe de
-desenvolvedores da Internet, todos subscritores da lista de
-desenvolvimento do PostgreSQL. O coordenador atual é Marc G. Fournier
-(scrappy@postgreSQL.org). Esta equipe é agora responsável pelo
-desenvolvimento atual e futuro do PostgreSQL.
-
-%description -l ru.UTF-8
-PostgreSQL - система управления базами данных (прежде известная как
-Postgres, потом как Postgres95).
-
-PostgreSQL - это расширенная версия системы управления базами данных
-POSTGRES, исследовательского прототипа DBMS следующей генерации.
-Сохраняя мощную модель данных и богатый набор типов данных POSTGRES,
-она заменяет язык запросов PostQuel расширенным набором SQL.
-PostgreSQL бесплатен и поставляется в виде полного комплекта исходных
-текстов.
-
-PostgreSQL разрабатывался командой Internet-разработчиков, подписанных
-на список рассылки, посвященный разработке PostgreSQL. В настоящее
-время координатором является Marc G. Fournier
-(scrappy@postgreSQL.org). Эта команда в настоящее время отвечает за
-все текущие и будущие разработки PostgreSQL.
-
-Авторами PostgreSQL 1.01 были Andrew Yu и Jolly Chen. Многие внесли
-свой вклад в портирование, тестирование, отладку и улучшение кода.
-Оригинальный код Postgres, от которого произошел PostgreSQL, был
-создан усилиями студентов, аспирантов и персонала, работающего под
-руководством профессора Michael Stonebraker в University of
-California, Berkeley.
-
-Оригинальное название ПО в Berkeley было Postgres. Когда в 1995 году
-была добавлена функциональность SQL, название изменилось на
-Postgres95. В конце 1996 года оно еще раз изменилось и теперь это
-PostgreSQL.
-
-PostgreSQL работает на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD
-и большинстве других разновидностей Unix.
-
-%description -l tr.UTF-8
-PostgreSQL, POSTGRES'den türemiş bir veri tabanı yönetim sistemidir
-(DBMS). Güçlü veri modeli ve zengin POSTGRES veri tiplerini
-desteklerken SQL'in genişletilmiş bir altkümesi yerine PostQuel
-sorgulama dilini koyar.
-
-%description -l uk.UTF-8
-PostgreSQL - система керування базами даних (раніш відома як Postgres,
-потім як Postgres95).
-
-PostgreSQL - це розширена версія системи керування базами даних
-POSTGRES, дослідницького прототипу DBMS наступної генерації.
-Зберігаючи потужну модель даних та багатий набір типів даних POSTGRES,
-вона замінює мову запитів PostQuel розширеним набором SQL. PostgreSQL
-безкоштовна та поставляється у вигляді повного комплекту вихідних
-текстів.
-
-PostgreSQL розробляється командою Internet-програмістів, учасників
-списку розсилки, присвяченого розробці PostgreSQL. Наразі
-координатором є Marc G. Fournier (scrappy@postgreSQL.org). Ця команда
-відповідає за всі поточні та майбутні розробки PostgreSQL.
-
-Авторами PostgreSQL 1.01 були Andrew Yu та Jolly Chen. Багато людей
-внесли свій внесок в портування, тестування, відладку та покращення
-коду. Оригінальний код Postgres, від якого походить PostgreSQL, був
-створений зусиллями студентів, аспірантів та персоналу, який працював
-під керівництвом професора Michael Stonebraker в University of
-California, Berkeley.
-
-Оригінальна назва програми в Berkeley була Postgres. Коли в 1995 році
-було додано функціональність SQL, назва змінилася на Postgres95. В
-кінці 1996 року вона ще раз змінилась і зараз це PostgreSQL.
-
-PostgreSQL працює на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD
-та більшості інших різновидів Unix.
-
-%package devel
+%package -n postgresql-devel
Summary: PostgreSQL development header files and libraries
Summary(de.UTF-8): PostgreSQL-Entwicklungs-Header-Dateien und Libraries
Summary(es.UTF-8): Archivos de inclusión y bibliotecas PostgreSQL
Summary(tr.UTF-8): PostgreSQL başlık dosyaları ve kitaplıklar
Summary(uk.UTF-8): PostgreSQL - хедери та бібліотеки програміста
Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
+Requires: postgresql-libs = %{version}-%{release}
-%description devel
+%description -n postgresql-devel
This package contains header files and libraries required to compile
applications that are talking directly to the PostgreSQL backend
server.
-%description devel -l de.UTF-8
-Dieses Paket enthält die Header-Dateien und Libraries, die zum
-Kompilieren von Applikationen notwendig sind, die direkt mit dem
-PostgreSQL-Backend-Server kommunizieren.
-
-%description devel -l es.UTF-8
-Este paquete contiene archivos de inclusión y bibliotecas requeridas
-para compilación de aplicativos que se comunican directamente con el
-servidor backend PostgreSQL.
-
-%description devel -l fr.UTF-8
-Ce package contient les fichiers d'en-tête et les bibliothéques
-nécessaires pour compiler des applications ayant des échanges directs
-avec le serveur du backend PostgreSQL.
-
-%description devel -l pl.UTF-8
+%description -n postgresql-devel -l pl.UTF-8
Pakiet zawiera nagłówki oraz biblioteki wymagane do kompilacji
aplikacji łączących się bezpośrednio z serwerem PostgreSQL.
-%description devel -l pt_BR.UTF-8
-Este pacote contém arquivos de inclusão e bibliotecas requeridas para
-compilação de aplicativos que se comunicam diretamente com o servidor
-backend PostgreSQL.
-
-%description devel -l ru.UTF-8
-Этот пакет содержит хедеры и библиотеки, необходимые для сборки
-приложений, непосредственно взаимодействующих с сервером PostgreSQL.
-
-%description devel -l tr.UTF-8
-Bu paket, PostgreSQL sunucusuyla konuşacak yazılımlar geliştirmek için
-gereken başlık dosyalarını ve kitaplıkları içerir.
-
-%description devel -l uk.UTF-8
-Цей пакет містить хедери та бібліотеки, необхідні для розробки
-програм, які безпосередньо взаємодіють з сервером PostgreSQL.
-
%package backend-devel
Summary: PostgreSQL backend development header files
Summary(pl.UTF-8): PostgreSQL - pliki nagłówkowe dla backendu
Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-Requires: %{name}-libs = %{version}-%{release}
+Requires: postgresql-devel = %{version}-%{release}
+Requires: postgresql-libs = %{version}-%{release}
%description backend-devel
This package contains header files required to compile functions that
Summary(ru.UTF-8): Клиентские программы, необходимые для доступа к серверу PostgreSQL
Summary(uk.UTF-8): Клієнтські програми, необхідні для доступу до сервера PostgreSQL
Group: Applications/Databases
-Requires: %{name}-libs = %{version}-%{release}
+Requires: alternatives
+Requires: postgresql-libs = %{version}-%{release}
%description clients
This package includes only the clients needed to access an PostgreSQL
you need to install. Clients include several command-line utilities
you can use to manage your databases on a remote PostgreSQL server.
-%description clients -l es.UTF-8
-Este paquete incluye solamente los clientes necesarios para acceder un
-servidor PostgreSQL. El servidor está en el paquete principal.
-
%description clients -l pl.UTF-8
Pakiet zawiera programy klienckie potrzebne dla dostępu do serwera
PostgreSQL oraz narzędzia do zarządzania bazami działające z linii
poleceń. Serwer znajduje się w głównym pakiecie.
-%description clients -l pt_BR.UTF-8
-Este pacote inclui somente os clientes necessários para acessar um
-servidor PostgreSQL. O servidor está no pacote principal.
-
-%description clients -l ru.UTF-8
-Этот пакет включает только клиентские программы и библиотеки,
-необходимые для доступа к серверу PostgreSQL. Сервер входит в главный
-пакет. Если вам надо только работать с другим сервером PostgreSQL, это
-единственный пакет, который вам надо установить.
-
-Теперь пакеты с библиотеками для разных языков программирования (C,
-C++, Perl и Tcl) разделены. Этот пакет включает только библиотеки для
-языка C.
-
-%description clients -l uk.UTF-8
-Цей пакет містить тільки клієнтські програми та бібліотеки, необхідні
-для доступу до сервера PostgreSQL. Сервер міститься в головному
-пакеті. Якщо вам потрібно працювати з іншим сервером PostgreSQL, це
-єдиний пакет, який вам треба встановити.
-
-Тепер пакети з бібліотеками для різних мов програмування (C, C++, Perl
-і Tcl) розділені. Цей пакет містить тільки бібліотеки для мови C.
-
%package doc
Summary: Documentation for PostgreSQL
Summary(pl.UTF-8): Dodatkowa dokumantacja dla PostgreSQL
Pakiet ten zawiera dokumentację oraz HOWTO m.in. dla programistów,
administratorów w formacie HTML.
-%package libs
+%package -n postgresql-libs
Summary: PostgreSQL libraries
Summary(es.UTF-8): Biblioteca compartida del PostgreSQL
Summary(pl.UTF-8): Biblioteki dzielone programu PostgreSQL
Summary(zh_CN.UTF-8): PostgreSQL 客户所需要的共享库
Group: Libraries
-%description libs
+%description -n postgresql-libs
PostgreSQL shared libraries.
-%description libs -l es.UTF-8
-Este paquete contiene la biblioteca compartida para acceso al
-PostgreSQL.
-
-%description libs -l pl.UTF-8
+%description -n postgresql-libs -l pl.UTF-8
Biblioteki dzielone programu PostgreSQL.
-%description libs -l pt_BR.UTF-8
-Este pacote contém a biblioteca compartilhada para acesso ao
-PostgreSQL.
-
%package ecpg
Summary: Embedded SQL in C interface
Summary(pl.UTF-8): Interfejs wbudowanego SQL-a w język C
Group: Libraries
-Requires: %{name}-libs = %{version}-%{release}
+Requires: postgresql-libs = %{version}-%{release}
+Requires: postgresql-ecpg-libs = %{version}-%{release}
%description ecpg
Embedded SQL in C interface.
%description ecpg -l pl.UTF-8
Interfejs wbudowanego SQL-a w język C.
-%package ecpg-devel
+%package -n postgresql-ecpg-libs
+Summary: PostgreSQL libraries
+Summary(es.UTF-8): Biblioteca compartida del PostgreSQL
+Summary(pl.UTF-8): Biblioteki dzielone programu PostgreSQL
+Summary(pt_BR.UTF-8): Biblioteca compartilhada do PostgreSQL
+Summary(zh_CN.UTF-8): PostgreSQL 客户所需要的共享库
+Group: Libraries
+
+%description -n postgresql-ecpg-libs
+PostgreSQL shared libraries.
+
+%description -n postgresql-ecpg-libs -l pl.UTF-8
+Biblioteki dzielone programu PostgreSQL.
+
+%package -n postgresql-ecpg-devel
Summary: Embedded SQL in C interface files
Summary(pl.UTF-8): Pliki programistyczne interfejsu wbudowanego SQL-a w język C
Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-Requires: %{name}-ecpg = %{version}-%{release}
+Requires: postgresql-devel = %{version}-%{release}
+Requires: postgresql-ecpg-devel = %{version}-%{release}
-%description ecpg-devel
+%description -n postgresql-ecpg-devel
Embedded SQL in C interface files.
-%description ecpg-devel -l pl.UTF-8
+%description -n postgresql-ecpg-devel -l pl.UTF-8
Pliki programistyczne interfejsu wbudowanego SQL-a w język C.
-%package static
+%package -n postgresql-ecpg-static
Summary: PostgreSQL static libraries
Summary(es.UTF-8): Bibliotecas estaticas PostgreSQL
Summary(pl.UTF-8): Biblioteki statyczne programu PostgreSQL
Summary(ru.UTF-8): Статические библиотеки для программирования с PostgreSQL
Summary(uk.UTF-8): Статичні бібліотеки для програмування з PostgreSQL
Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
+Requires: postgresql-devel = %{version}-%{release}
-%description static
+%description -n postgresql-ecpg-static
PostgreSQL static libraries.
-%description static -l es.UTF-8
-Este paquete contiene bibliotecas estaticas requerida para compilación
-de aplicativos que se comunican directamente con el servidor backend
-PostgreSQL.
-
-%description static -l pl.UTF-8
+%description -n postgresql-ecpg-static -l pl.UTF-8
Biblioteki statyczne programu PostgreSQL.
-%description static -l pt_BR.UTF-8
-Este pacote contém as bibliotecas estáticas requeridas para compilação
-de aplicativos que se comunicam diretamente com o servidor backend
-PostgreSQL.
+%package -n postgresql-static
+Summary: PostgreSQL static libraries
+Summary(es.UTF-8): Bibliotecas estaticas PostgreSQL
+Summary(pl.UTF-8): Biblioteki statyczne programu PostgreSQL
+Summary(pt_BR.UTF-8): Bibliotecas estáticas PostgreSQL
+Summary(ru.UTF-8): Статические библиотеки для программирования с PostgreSQL
+Summary(uk.UTF-8): Статичні бібліотеки для програмування з PostgreSQL
+Group: Development/Libraries
+Requires: postgresql-devel = %{version}-%{release}
-%description static -l ru.UTF-8
-Это отдельный пакет со статическими библиотеками, которые больше не
-входят в %{name}-devel.
+%description -n postgresql-static
+PostgreSQL static libraries.
-%description static -l uk.UTF-8
-Це окремий пакет зі статичними бібліотеками, які більш не входять в
-%{name}-devel.
+%description -n postgresql-static -l pl.UTF-8
+Biblioteki statyczne programu PostgreSQL.
%package module-plperl
Summary: PL/perl - PostgreSQL procedural language
Różne moduły dołączone do PostgreSQL-a.
%prep
-%setup -q
+%setup -q -n postgresql-%{version}
%patch0 -p1
%{?with_absolute_dbpaths:%patch1 -p1}
%patch2 -p1
-
+%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%{__autoheader}
%configure \
CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \
+ --prefix=%{pgsqldatadir} \
+ --bindir=%{pgsqllibdir}/bin \
+ --sbindir=%{pgsqllibdir}/sbin \
+ --includedir=%{_includedir} \
+ --mandir=%{pgsqldatadir}/man \
+ --datadir=%{pgsqldatadir} \
+ --libdir=%{_libdir} \
+ --docdir=%{pgsqldatadir}/doc \
--disable-rpath \
--enable-depend \
%{?with_systemtap:--enable-dtrace} \
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
- $RPM_BUILD_ROOT{/var/{lib/pgsql,log},%{_pgsqldir}} \
+ $RPM_BUILD_ROOT/var/{lib/pgsql,log} \
$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
$RPM_BUILD_ROOT%{_mandir} \
$RPM_BUILD_ROOT/home/services/postgres
touch $RPM_BUILD_ROOT/var/log/pgsql
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql
+sed -e 's,@pgsqlbindir@,%{pgsqllibdir}/bin,g' %{SOURCE1} >$RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql10
+install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql10
install -d howto
tar zxf %{SOURCE2} -C howto
for f in libpq5 pgscripts postgres psql initdb ecpg ecpglib6 \
plpgsql %{?with_perl:plperl} %{?with_python:plpython} \
pg_archivecleanup pg_basebackup pg_config pg_controldata pg_ctl pg_dump pg_resetwal pg_rewind pg_test_fsync pg_test_timing pg_upgrade pg_waldump; do
- %find_lang $f-%{mver}
+ %find_lang $f-%{pgver}
done
# merge locales
merge_lang() {
- cat $(for f in $@; do echo ${f}-%{mver}.lang ; done)
+ cat $(for f in $@; do echo ${f}-%{pgver}.lang ; done)
}
merge_lang pgscripts postgres plpgsql \
pg_basebackup pg_controldata pg_resetwal pg_rewind pg_upgrade pg_test_fsync pg_test_timing pg_waldump > main.lang
merge_lang psql initdb \
pg_archivecleanup pg_ctl pg_dump > clients.lang
-merge_lang ecpg ecpglib6 > ecpg.lang
%if %{with tcl}
-%find_lang pltcl-%{mver}
+%find_lang pltcl-%{pgver}
%endif
%if %{with selinux}
-%{__mv} $RPM_BUILD_ROOT{%{_datadir}/postgresql/contrib,%{_pgsqldir}}/sepgsql.sql
+%{__mv} $RPM_BUILD_ROOT{%{pgsqldatadir}/contrib,%{extensiondir}}/sepgsql.sql
%endif
-cp -p src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/server/
+cp -p src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/%{pgver}/server/
# package it...? nah, why bother.
-%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html
+%{__rm} -r $RPM_BUILD_ROOT%{pgsqldatadir}/doc/html
%clean
rm -rf $RPM_BUILD_ROOT
%pre
PG_DB_CLUSTERS=""
-if [ -f /etc/sysconfig/postgresql ]; then
- . /etc/sysconfig/postgresql
+if [ -f /etc/sysconfig/postgresql10 ]; then
+ . /etc/sysconfig/postgresql10
if [ -z "$PG_DB_CLUSTERS" -a -n "$POSTGRES_DATA_DIR" ]; then
PG_DB_CLUSTERS="$POSTGRES_DATA_DIR"
fi
foundold=0
for pgdir in $PG_DB_CLUSTERS; do
if [ -f $pgdir/PG_VERSION ]; then
- if [ $(cat $pgdir/PG_VERSION) != '%{mver}' ]; then
+ if [ $(cat $pgdir/PG_VERSION) != '%{pgver}' ]; then
echo "Found database(s) in older, incompatible format in cluster $pgdir."
foundold=1
fi
echo "Alternatively you can use pg_upgrade for 8.3+ online upgrade with"
echo "some restrictions: http://www.postgresql.org/docs/10.0/static/pgupgrade.html"
echo
- echo "Warning for upgrade from version *before* 7.2."
- echo "Please note, that postgresql module path changed from"
- echo "%{_libdir}/pgsql/module to %{_libdir}/postgresql. Change the path"
- echo "in dump file before restore."
- echo
- echo "Warning for upgrade from version *before* 7.3."
- echo "Reading following webpage is encouraged:"
- echo "http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3"
exit 1
fi
%groupadd -g 88 -r postgres
fi
%post
-/sbin/chkconfig --add postgresql
-%service postgresql restart "postgresql server"
+/sbin/chkconfig --add postgresql10
+%service postgresql10 restart "postgresql10 server"
%preun
if [ "$1" = "0" ]; then
- %service postgresql stop
- /sbin/chkconfig --del postgresql
+ %service postgresql10 stop
+ /sbin/chkconfig --del postgresql10
+fi
+
+%post clients
+update-alternatives \
+ --install %{_bindir}/clusterdb clusterdb %{pgsqllibdir}/bin/clusterdb %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/clusterdb.1 clusterdb.1 %{pgsqldatadir}/man/man1/clusterdb.1* || :
+update-alternatives \
+ --install %{_bindir}/createdb createdb %{pgsqllibdir}/bin/createdb %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/createdb.1 createdb.1 %{pgsqldatadir}/man/man1/createdb.1* || :
+update-alternatives \
+ --install %{_bindir}/createuser createuser %{pgsqllibdir}/bin/createuser %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/createuser.1 createuser.1 %{pgsqldatadir}/man/man1/createuser.1* || :
+update-alternatives \
+ --install %{_bindir}/dropdb dropdb %{pgsqllibdir}/bin/dropdb %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/dropdb.1 dropdb.1 %{pgsqldatadir}/man/man1/dropdb.1* || :
+update-alternatives \
+ --install %{_bindir}/dropuser dropuser %{pgsqllibdir}/bin/dropuser %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/dropuser.1 dropuser.1 %{pgsqldatadir}/man/man1/dropuser.1* || :
+update-alternatives \
+ --install %{_bindir}/pg_archivecleanup pg_archivecleanup %{pgsqllibdir}/bin/pg_archivecleanup %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/pg_archivecleanup.1 pg_archivecleanup.1 %{pgsqldatadir}/man/man1/pg_archivecleanup.1* || :
+update-alternatives \
+ --install %{_bindir}/pg_dump pg_dump %{pgsqllibdir}/bin/pg_dump %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/pg_dump.1 pg_dump.1 %{pgsqldatadir}/man/man1/pg_dump.1* || :
+update-alternatives \
+ --install %{_bindir}/pg_dumpall pg_dumpall %{pgsqllibdir}/bin/pg_dumpall %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/pg_dumpall.1 pg_dumpall.1 %{pgsqldatadir}/man/man1/pg_dumpall.1* || :
+update-alternatives \
+ --install %{_bindir}/pg_isready pg_isready %{pgsqllibdir}/bin/pg_isready %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/pg_isready.1 pg_isready.1 %{pgsqldatadir}/man/man1/pg_isready.1* || :
+update-alternatives \
+ --install %{_bindir}/pg_restore pg_restore %{pgsqllibdir}/bin/pg_restore %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/pg_restore.1 pg_restore.1 %{pgsqldatadir}/man/man1/pg_restore.1* || :
+update-alternatives \
+ --install %{_bindir}/psql psql %{pgsqllibdir}/bin/psql %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/psql.1 pgsql.1 %{pgsqldatadir}/man/man1/psql.1* || :
+update-alternatives \
+ --install %{_bindir}/reindexdb reindexdb %{pgsqllibdir}/bin/reindexdb %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/reindexdb.1 reindexdb.1 %{pgsqldatadir}/man/man1/reindexdb.1* || :
+update-alternatives \
+ --install %{_bindir}/vacuumdb vacuumdb %{pgsqllibdir}/bin/vacuumdb %{pgver}%{pgminver} \
+ --slave %{_mandir}/man1/vacuumdb.1 vacuumdb.1 %{pgsqldatadir}/man/man1/vacuumdb.1* || :
+
+%postun clients
+if [ $1 -eq 0 ]; then
+ update-alternatives --remove clusterdb %{pgsqllibdir}/bin/clusterdb || :
+ update-alternatives --remove createdb %{pgsqllibdir}/bin/createdb || :
+ update-alternatives --remove createuser %{pgsqllibdir}/bin/createuser || :
+ update-alternatives --remove dropdb %{pgsqllibdir}/bin/dropdb || :
+ update-alternatives --remove dropuser %{pgsqllibdir}/bin/dropuser || :
+ update-alternatives --remove pg_archivecleanup %{pgsqllibdir}/bin/pg_archivecleanup || :
+ update-alternatives --remove pg_dump %{pgsqllibdir}/bin/pg_dump || :
+ update-alternatives --remove pg_dumpall %{pgsqllibdir}/bin/pg_dumpall || :
+ update-alternatives --remove pg_isready %{pgsqllibdir}/bin/pg_isready || :
+ update-alternatives --remove pg_restore %{pgsqllibdir}/bin/pg_restore || :
+ update-alternatives --remove psql %{pgsqllibdir}/bin/psql || :
+ update-alternatives --remove reindexdb %{pgsqllibdir}/bin/reindexdb || :
+ update-alternatives --remove vacuumdb %{pgsqllibdir}/bin/vacuumdb || :
fi
-%post libs -p /sbin/ldconfig
-%postun libs -p /sbin/ldconfig
+%post -n postgresql-libs -p /sbin/ldconfig
+%postun -n postgresql-libs -p /sbin/ldconfig
-%post ecpg -p /sbin/ldconfig
-%postun ecpg -p /sbin/ldconfig
+%post -n postgresql-ecpg-libs -p /sbin/ldconfig
+%postun -n postgresql-ecpg-libs -p /sbin/ldconfig
%files -f main.lang
%defattr(644,root,root,755)
%doc COPYRIGHT README HISTORY doc/{bug.template,KNOWN_BUGS,MISSING_FEATURES,TODO}
-%attr(754,root,root) /etc/rc.d/init.d/postgresql
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postgresql
-
-%attr(755,root,root) %{_bindir}/initdb
-%attr(755,root,root) %{_bindir}/pg_basebackup
-%attr(755,root,root) %{_bindir}/pg_controldata
-%attr(755,root,root) %{_bindir}/pg_ctl
-%attr(755,root,root) %{_bindir}/pg_resetwal
-%attr(755,root,root) %{_bindir}/pg_receivewal
-%attr(755,root,root) %{_bindir}/pg_recvlogical
-%attr(755,root,root) %{_bindir}/pg_rewind
-%attr(755,root,root) %{_bindir}/pg_test_fsync
-%attr(755,root,root) %{_bindir}/pg_test_timing
-%attr(755,root,root) %{_bindir}/pg_upgrade
-%attr(755,root,root) %{_bindir}/pg_waldump
-%attr(755,root,root) %{_bindir}/pgbench
-%attr(755,root,root) %{_bindir}/postgres
-%attr(755,root,root) %{_bindir}/postmaster
-
-%attr(755,root,root) %{_pgmoduledir}/ascii_and_mic.so
-%attr(755,root,root) %{_pgmoduledir}/cyrillic_and_mic.so
-%attr(755,root,root) %{_pgmoduledir}/dict_int.so
-%attr(755,root,root) %{_pgmoduledir}/dict_snowball.so
-%attr(755,root,root) %{_pgmoduledir}/dict_xsyn.so
-%attr(755,root,root) %{_pgmoduledir}/euc*.so
-%attr(755,root,root) %{_pgmoduledir}/latin2_and_win1250.so
-%attr(755,root,root) %{_pgmoduledir}/latin_and_mic.so
-%attr(755,root,root) %{_pgmoduledir}/libpqwalreceiver.so
-%attr(755,root,root) %{_pgmoduledir}/pgoutput.so
-%attr(755,root,root) %{_pgmoduledir}/plpgsql.so
-%attr(755,root,root) %{_pgmoduledir}/utf8_and_*.so
-
-%dir %{_pgsqldir}
-%{_pgsqldir}/plpgsql--*.sql
-%{_pgsqldir}/plpgsql.control
-
-%dir %{_datadir}/postgresql
-%{_datadir}/postgresql/*.bki
-%{_datadir}/postgresql/*.sample
-%{_datadir}/postgresql/*.description
-%{_datadir}/postgresql/*.shdescription
-%{_datadir}/postgresql/*.sql
-%{_datadir}/postgresql/*.txt
-%{_datadir}/postgresql/timezonesets
-%{_datadir}/postgresql/tsearch_data
-
-%dir %{_datadir}/postgresql/contrib
+%attr(754,root,root) /etc/rc.d/init.d/postgresql10
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postgresql10
+
+%attr(755,root,root) %{pgsqllibdir}/bin/initdb
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_basebackup
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_controldata
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_ctl
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_resetwal
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_receivewal
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_recvlogical
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_rewind
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_test_fsync
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_test_timing
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_upgrade
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_waldump
+%attr(755,root,root) %{pgsqllibdir}/bin/pgbench
+%attr(755,root,root) %{pgsqllibdir}/bin/postgres
+%attr(755,root,root) %{pgsqllibdir}/bin/postmaster
+
+%attr(755,root,root) %{moduledir}/ascii_and_mic.so
+%attr(755,root,root) %{moduledir}/cyrillic_and_mic.so
+%attr(755,root,root) %{moduledir}/dict_int.so
+%attr(755,root,root) %{moduledir}/dict_snowball.so
+%attr(755,root,root) %{moduledir}/dict_xsyn.so
+%attr(755,root,root) %{moduledir}/euc*.so
+%attr(755,root,root) %{moduledir}/latin2_and_win1250.so
+%attr(755,root,root) %{moduledir}/latin_and_mic.so
+%attr(755,root,root) %{moduledir}/libpqwalreceiver.so
+%attr(755,root,root) %{moduledir}/pgoutput.so
+%attr(755,root,root) %{moduledir}/plpgsql.so
+%attr(755,root,root) %{moduledir}/utf8_and_*.so
+
+%dir %{extensiondir}
+%{extensiondir}/plpgsql--*.sql
+%{extensiondir}/plpgsql.control
+
+%dir %{pgsqldatadir}
+%{pgsqldatadir}/*.bki
+%{pgsqldatadir}/*.sample
+%{pgsqldatadir}/*.description
+%{pgsqldatadir}/*.shdescription
+%{pgsqldatadir}/*.sql
+%{pgsqldatadir}/*.txt
+%{pgsqldatadir}/timezonesets
+%{pgsqldatadir}/tsearch_data
+
+%dir %{pgsqldatadir}/contrib
%attr(700,postgres,postgres) /home/services/postgres
%attr(700,postgres,postgres) %dir /var/lib/pgsql
%attr(640,postgres,postgres) %config(noreplace) %verify(not md5 mtime size) /var/log/pgsql
-%{_mandir}/man1/initdb.1*
-%{_mandir}/man1/pg_basebackup.1*
-%{_mandir}/man1/pg_controldata.1*
-%{_mandir}/man1/pg_ctl.1*
-%{_mandir}/man1/pg_resetwal.1*
-%{_mandir}/man1/pg_receivewal.1*
-%{_mandir}/man1/pg_recvlogical.1*
-%{_mandir}/man1/pg_rewind.1*
-%{_mandir}/man1/pg_waldump.1*
-%{_mandir}/man1/pg_test_fsync.1*
-%{_mandir}/man1/pg_test_timing.1*
-%{_mandir}/man1/pg_upgrade.1*
-%{_mandir}/man1/pgbench.1*
-%{_mandir}/man1/postgres.1*
-%{_mandir}/man1/postmaster.1*
+%{pgsqldatadir}/man/man1/initdb.1*
+%{pgsqldatadir}/man/man1/pg_basebackup.1*
+%{pgsqldatadir}/man/man1/pg_controldata.1*
+%{pgsqldatadir}/man/man1/pg_ctl.1*
+%{pgsqldatadir}/man/man1/pg_resetwal.1*
+%{pgsqldatadir}/man/man1/pg_receivewal.1*
+%{pgsqldatadir}/man/man1/pg_recvlogical.1*
+%{pgsqldatadir}/man/man1/pg_rewind.1*
+%{pgsqldatadir}/man/man1/pg_waldump.1*
+%{pgsqldatadir}/man/man1/pg_test_fsync.1*
+%{pgsqldatadir}/man/man1/pg_test_timing.1*
+%{pgsqldatadir}/man/man1/pg_upgrade.1*
+%{pgsqldatadir}/man/man1/pgbench.1*
+%{pgsqldatadir}/man/man1/postgres.1*
+%{pgsqldatadir}/man/man1/postmaster.1*
%files doc
%defattr(644,root,root,755)
%doc doc/src/sgml/html howto
%{_examplesdir}/%{name}-%{version}
-%files libs -f libpq5-%{mver}.lang
+%files -n postgresql-libs -f libpq5-%{pgver}.lang
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libpq.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libpq.so.5
-%dir %{_pgmoduledir}
-%files ecpg -f ecpg.lang
+%files ecpg -f ecpg-%{pgver}.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/ecpg
+%attr(755,root,root) %{pgsqllibdir}/bin/ecpg
+%{pgsqldatadir}/man/man1/ecpg.1*
+
+%files -n postgresql-ecpg-libs -f ecpglib6-%{pgver}.lang
%attr(755,root,root) %{_libdir}/libecpg.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libecpg.so.6
%attr(755,root,root) %{_libdir}/libecpg_compat.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libecpg_compat.so.3
%attr(755,root,root) %{_libdir}/libpgtypes.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libpgtypes.so.3
-%{_mandir}/man1/ecpg.1*
-%files ecpg-devel
+%files -n postgresql-ecpg-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libecpg.so
%attr(755,root,root) %{_libdir}/libecpg_compat.so
%attr(755,root,root) %{_libdir}/libpgtypes.so
%{_includedir}/ecpg*
-%{_pkgconfigdir}/libecpg.pc
-%{_pkgconfigdir}/libecpg_compat.pc
-%{_pkgconfigdir}/libpgtypes.pc
+%{_libdir}/pkgconfig/libecpg.pc
+%{_libdir}/pkgconfig/libecpg_compat.pc
+%{_libdir}/pkgconfig/libpgtypes.pc
-%files devel -f pg_config-%{mver}.lang
+%files -n postgresql-ecpg-static
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/pg_config
+%{_libdir}/libecpg.a
+%{_libdir}/libecpg_compat.a
+%{_libdir}/libpgtypes.a
+
+%files -n postgresql-devel -f pg_config-%{pgver}.lang
+%defattr(644,root,root,755)
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_config
%attr(755,root,root) %{_libdir}/libpq.so
%dir %{_includedir}/postgresql
%{_includedir}/libpq-events.h
%{_includedir}/postgresql/internal/pqexpbuffer.h
%{_includedir}/postgresql/internal/libpq
%{_includedir}/libpq
-%{_pkgconfigdir}/libpq.pc
-%{_mandir}/man1/pg_config.1*
+%{_libdir}/pkgconfig/libpq.pc
+%{pgsqldatadir}/man/man1/pg_config.1*
%files backend-devel
%defattr(644,root,root,755)
-%{_includedir}/postgresql/server
-%dir %{_pgmoduledir}/pgxs
-%attr(755,root,root) %{_pgmoduledir}/pgxs/config
-%{_pgmoduledir}/pgxs/src
-%{_mandir}/man3/SPI_*.3*
-
-%files static
+%dir %{_includedir}/postgresql/%{pgver}
+%{_includedir}/postgresql/%{pgver}/server
+%dir %{moduledir}/pgxs
+%attr(755,root,root) %{moduledir}/pgxs/config
+%{moduledir}/pgxs/src
+%{pgsqldatadir}/man/man3/SPI_*.3*
+
+%files -n postgresql-static
%defattr(644,root,root,755)
-%{_libdir}/libecpg.a
-%{_libdir}/libecpg_compat.a
%{_libdir}/libpq.a
%{_libdir}/libpgcommon.a
%{_libdir}/libpgfeutils.a
-%{_libdir}/libpgtypes.a
%{_libdir}/libpgport.a
%files clients -f clients.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/clusterdb
-%attr(755,root,root) %{_bindir}/createdb
-%attr(755,root,root) %{_bindir}/createuser
-%attr(755,root,root) %{_bindir}/dropdb
-%attr(755,root,root) %{_bindir}/dropuser
-%attr(755,root,root) %{_bindir}/pg_archivecleanup
-%attr(755,root,root) %{_bindir}/pg_dump
-%attr(755,root,root) %{_bindir}/pg_dumpall
-%attr(755,root,root) %{_bindir}/pg_isready
-%attr(755,root,root) %{_bindir}/pg_restore
-%attr(755,root,root) %{_bindir}/psql
-%attr(755,root,root) %{_bindir}/reindexdb
-%attr(755,root,root) %{_bindir}/vacuumdb
-
-%{_mandir}/man1/clusterdb.1*
-%{_mandir}/man1/createdb.1*
-%{_mandir}/man1/createuser.1*
-%{_mandir}/man1/dropdb.1*
-%{_mandir}/man1/dropuser.1*
-%{_mandir}/man1/pg_archivecleanup.1*
-%{_mandir}/man1/pg_dump.1*
-%{_mandir}/man1/pg_dumpall.1*
-%{_mandir}/man1/pg_isready.1*
-%{_mandir}/man1/pg_restore.1*
-%{_mandir}/man1/psql.1*
-%{_mandir}/man1/reindexdb.1*
-%{_mandir}/man1/vacuumdb.1*
-%{_mandir}/man7/*.7*
+%attr(755,root,root) %{pgsqllibdir}/bin/clusterdb
+%attr(755,root,root) %{pgsqllibdir}/bin/createdb
+%attr(755,root,root) %{pgsqllibdir}/bin/createuser
+%attr(755,root,root) %{pgsqllibdir}/bin/dropdb
+%attr(755,root,root) %{pgsqllibdir}/bin/dropuser
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_archivecleanup
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_dump
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_dumpall
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_isready
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_restore
+%attr(755,root,root) %{pgsqllibdir}/bin/psql
+%attr(755,root,root) %{pgsqllibdir}/bin/reindexdb
+%attr(755,root,root) %{pgsqllibdir}/bin/vacuumdb
+
+%{pgsqldatadir}/man/man1/clusterdb.1*
+%{pgsqldatadir}/man/man1/createdb.1*
+%{pgsqldatadir}/man/man1/createuser.1*
+%{pgsqldatadir}/man/man1/dropdb.1*
+%{pgsqldatadir}/man/man1/dropuser.1*
+%{pgsqldatadir}/man/man1/pg_archivecleanup.1*
+%{pgsqldatadir}/man/man1/pg_dump.1*
+%{pgsqldatadir}/man/man1/pg_dumpall.1*
+%{pgsqldatadir}/man/man1/pg_isready.1*
+%{pgsqldatadir}/man/man1/pg_restore.1*
+%{pgsqldatadir}/man/man1/psql.1*
+%{pgsqldatadir}/man/man1/reindexdb.1*
+%{pgsqldatadir}/man/man1/vacuumdb.1*
+%{pgsqldatadir}/man/man7/*.7*
%if %{with perl}
-%files module-plperl -f plperl-%{mver}.lang
+%files module-plperl -f plperl-%{pgver}.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/plperl.so
-%{_pgsqldir}/plperl--*.sql
-%{_pgsqldir}/plperl.control
-%{_pgsqldir}/plperlu--*.sql
-%{_pgsqldir}/plperlu.control
+%attr(755,root,root) %{moduledir}/plperl.so
+%{extensiondir}/plperl--*.sql
+%{extensiondir}/plperl.control
+%{extensiondir}/plperlu--*.sql
+%{extensiondir}/plperlu.control
%endif
%if %{with python}
-%files module-plpython -f plpython-%{mver}.lang
+%files module-plpython -f plpython-%{pgver}.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/plpython2.so
-%{_pgsqldir}/plpython*--*.sql
-%{_pgsqldir}/plpython*.control
+%attr(755,root,root) %{moduledir}/plpython2.so
+%{extensiondir}/plpython*--*.sql
+%{extensiondir}/plpython*.control
%endif
%if %{with tcl}
-%files module-pltcl -f pltcl-%{mver}.lang
+%files module-pltcl -f pltcl-%{pgver}.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/pltcl.so
-%{_pgsqldir}/pltcl*--*.sql
-%{_pgsqldir}/pltcl*.control
+%attr(755,root,root) %{moduledir}/pltcl.so
+%{extensiondir}/pltcl*--*.sql
+%{extensiondir}/pltcl*.control
%endif
%files module-dblink
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/dblink.so
-%{_pgsqldir}/dblink--*.sql
-%{_pgsqldir}/dblink.control
-%{_mandir}/man3/dblink*.3*
+%attr(755,root,root) %{moduledir}/dblink.so
+%{extensiondir}/dblink--*.sql
+%{extensiondir}/dblink.control
+%{pgsqldatadir}/man/man3/dblink*.3*
%files module-lo
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/lo.so
-%{_pgsqldir}/lo--*.sql
-%{_pgsqldir}/lo.control
+%attr(755,root,root) %{moduledir}/lo.so
+%{extensiondir}/lo--*.sql
+%{extensiondir}/lo.control
%files module-pg_trgm
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/pg_trgm.so
-%{_pgsqldir}/pg_trgm--*.sql
-%{_pgsqldir}/pg_trgm.control
+%attr(755,root,root) %{moduledir}/pg_trgm.so
+%{extensiondir}/pg_trgm--*.sql
+%{extensiondir}/pg_trgm.control
%files module-pgcrypto
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/pgcrypto.so
-%{_pgsqldir}/pgcrypto--*.sql
-%{_pgsqldir}/pgcrypto.control
+%attr(755,root,root) %{moduledir}/pgcrypto.so
+%{extensiondir}/pgcrypto--*.sql
+%{extensiondir}/pgcrypto.control
%if %{with selinux}
%files module-sepgsql
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/sepgsql.so
-%{_pgsqldir}/sepgsql.sql
+%attr(755,root,root) %{moduledir}/sepgsql.so
+%{extensiondir}/sepgsql.sql
%endif
%files module-tablefunc
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/tablefunc.so
-%{_pgsqldir}/*tablefunc--*.sql
-%{_pgsqldir}/*tablefunc.control
+%attr(755,root,root) %{moduledir}/tablefunc.so
+%{extensiondir}/*tablefunc--*.sql
+%{extensiondir}/*tablefunc.control
%files module-xml2
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/pgxml.so
-%{_pgsqldir}/xml2--*.sql
-%{_pgsqldir}/xml2.control
+%attr(755,root,root) %{moduledir}/pgxml.so
+%{extensiondir}/xml2--*.sql
+%{extensiondir}/xml2.control
%files contrib
%defattr(644,root,root,755)
%doc contrib/README
-%attr(755,root,root) %{_bindir}/oid2name
-%attr(755,root,root) %{_bindir}/pg_standby
-%attr(755,root,root) %{_bindir}/vacuumlo
-%attr(755,root,root) %{_pgmoduledir}/_int.so
-%attr(755,root,root) %{_pgmoduledir}/adminpack.so
-%attr(755,root,root) %{_pgmoduledir}/auth_delay.so
-%attr(755,root,root) %{_pgmoduledir}/auto_explain.so
-%attr(755,root,root) %{_pgmoduledir}/bloom.so
-%attr(755,root,root) %{_pgmoduledir}/btree_gin.so
-%attr(755,root,root) %{_pgmoduledir}/btree_gist.so
-%attr(755,root,root) %{_pgmoduledir}/chkpass.so
-%attr(755,root,root) %{_pgmoduledir}/citext.so
-%attr(755,root,root) %{_pgmoduledir}/cube.so
-%attr(755,root,root) %{_pgmoduledir}/earthdistance.so
-%attr(755,root,root) %{_pgmoduledir}/file_fdw.so
-%attr(755,root,root) %{_pgmoduledir}/fuzzystrmatch.so
-%attr(755,root,root) %{_pgmoduledir}/hstore.so
-%attr(755,root,root) %{_pgmoduledir}/isn.so
-%attr(755,root,root) %{_pgmoduledir}/ltree.so
-%attr(755,root,root) %{_pgmoduledir}/pageinspect.so
-%attr(755,root,root) %{_pgmoduledir}/passwordcheck.so
-%attr(755,root,root) %{_pgmoduledir}/pg_buffercache.so
-%attr(755,root,root) %{_pgmoduledir}/pg_freespacemap.so
-%attr(755,root,root) %{_pgmoduledir}/pg_prewarm.so
-%attr(755,root,root) %{_pgmoduledir}/pg_stat_statements.so
-%attr(755,root,root) %{_pgmoduledir}/pg_visibility.so
-%attr(755,root,root) %{_pgmoduledir}/pgrowlocks.so
-%attr(755,root,root) %{_pgmoduledir}/pgstattuple.so
-%attr(755,root,root) %{_pgmoduledir}/postgres_fdw.so
-%attr(755,root,root) %{_pgmoduledir}/seg.so
-%attr(755,root,root) %{_pgmoduledir}/sslinfo.so
-%attr(755,root,root) %{_pgmoduledir}/tcn.so
-%attr(755,root,root) %{_pgmoduledir}/tsm_system_rows.so
-%attr(755,root,root) %{_pgmoduledir}/tsm_system_time.so
-%attr(755,root,root) %{_pgmoduledir}/unaccent.so
-%attr(755,root,root) %{_pgmoduledir}/uuid-ossp.so
-%{_pgsqldir}/adminpack--*.sql
-%{_pgsqldir}/adminpack.control
-%{_pgsqldir}/bloom--*.sql
-%{_pgsqldir}/bloom.control
-%{_pgsqldir}/btree_gin--*.sql
-%{_pgsqldir}/btree_gin.control
-%{_pgsqldir}/btree_gist--*.sql
-%{_pgsqldir}/btree_gist.control
-%{_pgsqldir}/chkpass--*.sql
-%{_pgsqldir}/chkpass.control
-%{_pgsqldir}/citext--*.sql
-%{_pgsqldir}/citext.control
-%{_pgsqldir}/cube--*.sql
-%{_pgsqldir}/cube.control
-%{_pgsqldir}/dict_int--*.sql
-%{_pgsqldir}/dict_int.control
-%{_pgsqldir}/dict_xsyn--*.sql
-%{_pgsqldir}/dict_xsyn.control
-%{_pgsqldir}/earthdistance--*.sql
-%{_pgsqldir}/earthdistance.control
-%{_pgsqldir}/file_fdw--*.sql
-%{_pgsqldir}/file_fdw.control
-%{_pgsqldir}/fuzzystrmatch--*.sql
-%{_pgsqldir}/fuzzystrmatch.control
-%{_pgsqldir}/hstore--*.sql
-%{_pgsqldir}/hstore.control
-%{_pgsqldir}/intarray--*.sql
-%{_pgsqldir}/intarray.control
-%{_pgsqldir}/intagg--*.sql
-%{_pgsqldir}/intagg.control
-%{_pgsqldir}/isn--*.sql
-%{_pgsqldir}/isn.control
-%{_pgsqldir}/ltree--*.sql
-%{_pgsqldir}/ltree.control
-%{_pgsqldir}/pageinspect--*.sql
-%{_pgsqldir}/pageinspect.control
-%{_pgsqldir}/pg_buffercache--*.sql
-%{_pgsqldir}/pg_buffercache.control
-%{_pgsqldir}/pg_freespacemap--*.sql
-%{_pgsqldir}/pg_freespacemap.control
-%{_pgsqldir}/pg_prewarm--*.sql
-%{_pgsqldir}/pg_prewarm.control
-%{_pgsqldir}/pg_stat_statements--*.sql
-%{_pgsqldir}/pg_stat_statements.control
-%{_pgsqldir}/pg_visibility--*.sql
-%{_pgsqldir}/pg_visibility.control
-%{_pgsqldir}/pgrowlocks--*.sql
-%{_pgsqldir}/pgrowlocks.control
-%{_pgsqldir}/pgstattuple--*.sql
-%{_pgsqldir}/pgstattuple.control
-%{_pgsqldir}/postgres_fdw--*.sql
-%{_pgsqldir}/postgres_fdw.control
-%{_pgsqldir}/seg--*.sql
-%{_pgsqldir}/seg.control
-%{_pgsqldir}/sslinfo--*.sql
-%{_pgsqldir}/sslinfo.control
-%{_pgsqldir}/tcn--*.sql
-%{_pgsqldir}/tcn.control
-%{_pgsqldir}/tsm_system_rows--*.sql
-%{_pgsqldir}/tsm_system_rows.control
-%{_pgsqldir}/tsm_system_time--*.sql
-%{_pgsqldir}/tsm_system_time.control
-%{_pgsqldir}/unaccent--*.sql
-%{_pgsqldir}/unaccent.control
-%{_pgsqldir}/uuid-ossp--*.sql
-%{_pgsqldir}/uuid-ossp.control
+%attr(755,root,root) %{pgsqllibdir}/bin/oid2name
+%attr(755,root,root) %{pgsqllibdir}/bin/pg_standby
+%attr(755,root,root) %{pgsqllibdir}/bin/vacuumlo
+%attr(755,root,root) %{moduledir}/_int.so
+%attr(755,root,root) %{moduledir}/adminpack.so
+%attr(755,root,root) %{moduledir}/auth_delay.so
+%attr(755,root,root) %{moduledir}/auto_explain.so
+%attr(755,root,root) %{moduledir}/bloom.so
+%attr(755,root,root) %{moduledir}/btree_gin.so
+%attr(755,root,root) %{moduledir}/btree_gist.so
+%attr(755,root,root) %{moduledir}/chkpass.so
+%attr(755,root,root) %{moduledir}/citext.so
+%attr(755,root,root) %{moduledir}/cube.so
+%attr(755,root,root) %{moduledir}/earthdistance.so
+%attr(755,root,root) %{moduledir}/file_fdw.so
+%attr(755,root,root) %{moduledir}/fuzzystrmatch.so
+%attr(755,root,root) %{moduledir}/hstore.so
+%attr(755,root,root) %{moduledir}/isn.so
+%attr(755,root,root) %{moduledir}/ltree.so
+%attr(755,root,root) %{moduledir}/pageinspect.so
+%attr(755,root,root) %{moduledir}/passwordcheck.so
+%attr(755,root,root) %{moduledir}/pg_buffercache.so
+%attr(755,root,root) %{moduledir}/pg_freespacemap.so
+%attr(755,root,root) %{moduledir}/pg_prewarm.so
+%attr(755,root,root) %{moduledir}/pg_stat_statements.so
+%attr(755,root,root) %{moduledir}/pg_visibility.so
+%attr(755,root,root) %{moduledir}/pgrowlocks.so
+%attr(755,root,root) %{moduledir}/pgstattuple.so
+%attr(755,root,root) %{moduledir}/postgres_fdw.so
+%attr(755,root,root) %{moduledir}/seg.so
+%attr(755,root,root) %{moduledir}/sslinfo.so
+%attr(755,root,root) %{moduledir}/tcn.so
+%attr(755,root,root) %{moduledir}/tsm_system_rows.so
+%attr(755,root,root) %{moduledir}/tsm_system_time.so
+%attr(755,root,root) %{moduledir}/unaccent.so
+%attr(755,root,root) %{moduledir}/uuid-ossp.so
+%{extensiondir}/adminpack--*.sql
+%{extensiondir}/adminpack.control
+%{extensiondir}/bloom--*.sql
+%{extensiondir}/bloom.control
+%{extensiondir}/btree_gin--*.sql
+%{extensiondir}/btree_gin.control
+%{extensiondir}/btree_gist--*.sql
+%{extensiondir}/btree_gist.control
+%{extensiondir}/chkpass--*.sql
+%{extensiondir}/chkpass.control
+%{extensiondir}/citext--*.sql
+%{extensiondir}/citext.control
+%{extensiondir}/cube--*.sql
+%{extensiondir}/cube.control
+%{extensiondir}/dict_int--*.sql
+%{extensiondir}/dict_int.control
+%{extensiondir}/dict_xsyn--*.sql
+%{extensiondir}/dict_xsyn.control
+%{extensiondir}/earthdistance--*.sql
+%{extensiondir}/earthdistance.control
+%{extensiondir}/file_fdw--*.sql
+%{extensiondir}/file_fdw.control
+%{extensiondir}/fuzzystrmatch--*.sql
+%{extensiondir}/fuzzystrmatch.control
+%{extensiondir}/hstore--*.sql
+%{extensiondir}/hstore.control
+%{extensiondir}/intarray--*.sql
+%{extensiondir}/intarray.control
+%{extensiondir}/intagg--*.sql
+%{extensiondir}/intagg.control
+%{extensiondir}/isn--*.sql
+%{extensiondir}/isn.control
+%{extensiondir}/ltree--*.sql
+%{extensiondir}/ltree.control
+%{extensiondir}/pageinspect--*.sql
+%{extensiondir}/pageinspect.control
+%{extensiondir}/pg_buffercache--*.sql
+%{extensiondir}/pg_buffercache.control
+%{extensiondir}/pg_freespacemap--*.sql
+%{extensiondir}/pg_freespacemap.control
+%{extensiondir}/pg_prewarm--*.sql
+%{extensiondir}/pg_prewarm.control
+%{extensiondir}/pg_stat_statements--*.sql
+%{extensiondir}/pg_stat_statements.control
+%{extensiondir}/pg_visibility--*.sql
+%{extensiondir}/pg_visibility.control
+%{extensiondir}/pgrowlocks--*.sql
+%{extensiondir}/pgrowlocks.control
+%{extensiondir}/pgstattuple--*.sql
+%{extensiondir}/pgstattuple.control
+%{extensiondir}/postgres_fdw--*.sql
+%{extensiondir}/postgres_fdw.control
+%{extensiondir}/seg--*.sql
+%{extensiondir}/seg.control
+%{extensiondir}/sslinfo--*.sql
+%{extensiondir}/sslinfo.control
+%{extensiondir}/tcn--*.sql
+%{extensiondir}/tcn.control
+%{extensiondir}/tsm_system_rows--*.sql
+%{extensiondir}/tsm_system_rows.control
+%{extensiondir}/tsm_system_time--*.sql
+%{extensiondir}/tsm_system_time.control
+%{extensiondir}/unaccent--*.sql
+%{extensiondir}/unaccent.control
+%{extensiondir}/uuid-ossp--*.sql
+%{extensiondir}/uuid-ossp.control
%if %{with perl}
-%attr(755,root,root) %{_pgmoduledir}/hstore_plperl.so
-%{_pgsqldir}/hstore_plperl--*.sql
-%{_pgsqldir}/hstore_plperl.control
-%{_pgsqldir}/hstore_plperlu--*.sql
-%{_pgsqldir}/hstore_plperlu.control
+%attr(755,root,root) %{moduledir}/hstore_plperl.so
+%{extensiondir}/hstore_plperl--*.sql
+%{extensiondir}/hstore_plperl.control
+%{extensiondir}/hstore_plperlu--*.sql
+%{extensiondir}/hstore_plperlu.control
%endif
%if %{with python}
-%attr(755,root,root) %{_pgmoduledir}/hstore_plpython2.so
-%attr(755,root,root) %{_pgmoduledir}/ltree_plpython2.so
-%{_pgsqldir}/hstore_plpythonu--*.sql
-%{_pgsqldir}/hstore_plpythonu.control
-%{_pgsqldir}/hstore_plpython2u--*.sql
-%{_pgsqldir}/hstore_plpython2u.control
-%{_pgsqldir}/hstore_plpython3u--*.sql
-%{_pgsqldir}/hstore_plpython3u.control
-%{_pgsqldir}/ltree_plpythonu--*.sql
-%{_pgsqldir}/ltree_plpythonu.control
-%{_pgsqldir}/ltree_plpython2u--*.sql
-%{_pgsqldir}/ltree_plpython2u.control
-%{_pgsqldir}/ltree_plpython3u--*.sql
-%{_pgsqldir}/ltree_plpython3u.control
+%attr(755,root,root) %{moduledir}/hstore_plpython2.so
+%attr(755,root,root) %{moduledir}/ltree_plpython2.so
+%{extensiondir}/hstore_plpythonu--*.sql
+%{extensiondir}/hstore_plpythonu.control
+%{extensiondir}/hstore_plpython2u--*.sql
+%{extensiondir}/hstore_plpython2u.control
+%{extensiondir}/hstore_plpython3u--*.sql
+%{extensiondir}/hstore_plpython3u.control
+%{extensiondir}/ltree_plpythonu--*.sql
+%{extensiondir}/ltree_plpythonu.control
+%{extensiondir}/ltree_plpython2u--*.sql
+%{extensiondir}/ltree_plpython2u.control
+%{extensiondir}/ltree_plpython3u--*.sql
+%{extensiondir}/ltree_plpython3u.control
%endif
-%{_mandir}/man1/oid2name.1*
-%{_mandir}/man1/pg_standby.1*
-%{_mandir}/man1/vacuumlo.1*
+%{pgsqldatadir}/man/man1/oid2name.1*
+%{pgsqldatadir}/man/man1/pg_standby.1*
+%{pgsqldatadir}/man/man1/vacuumlo.1*