Name: libpq
Version: 13.7
Release: 1
Summary: PostgreSQL client library
License: PostgreSQL
Url: http://www.postgresql.org/

Source0: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2
Patch0001: libpq-10.3-rpm-pgsql.patch
Patch0002: libpq-10.3-var-run-socket.patch
Patch0003: libpq-12.1-symbol-versioning.patch

BuildRequires: gcc glibc-devel bison flex gawk zlib-devel openssl-devel
BuildRequires: krb5-devel openldap-devel gettext multilib-rpm-config

Obsoletes: postgresql-libs < 14
Provides: postgresql-libs = %{version}-%{release}

%description
PostgreSQL is a powerful, open source object-relational database system
that uses and extends the SQL language combined with many features that
safely store and scale the most complicated data workloads. This package
provides the essential shared library for any PostgreSQL client program
or interface.

%package devel
Summary: Development files for building PostgreSQL client tools
Requires: libpq%{?_isa} = %{version}-%{release}
Provides: postgresql-devel = %{version}-%{release}
Obsoletes: postgresql-devel < 14

%description devel
The development package of libpq

%prep
%autosetup -n postgresql-%{version} -p1

%build
export SYMBOL_VERSION_PREFIX=RHPG_
%configure --disable-rpath --with-ldap --with-openssl --with-gssapi \
    --enable-nls --without-readline --datadir=%_datadir/pgsql
%global build_subdirs \\\
        src/port \\\
        src/interfaces/libpq \\\
        src/bin/pg_config \\\
        src/include
for subdir in %build_subdirs; do
    %make_build -C "$subdir"
done

%install
for subdir in %build_subdirs; do
    %make_install -C "$subdir"
done

find $RPM_BUILD_ROOT -name '*.a' -delete
rm -r $RPM_BUILD_ROOT%_includedir/pgsql/server

%multilib_fix_c_header --file "%_includedir/pg_config.h"
%multilib_fix_c_header --file "%_includedir/pg_config_ext.h"

cp /dev/null libpq.lst
%find_lang libpq5-13
cat libpq5-13.lang >>libpq.lst
cp /dev/null libpq-devel.lst
%find_lang pg_config-13
cat pg_config-13.lang >>libpq-devel.lst

%files -f libpq.lst
%license COPYRIGHT
%_libdir/libpq.so.5*
%dir %_datadir/pgsql
%doc %_datadir/pgsql/pg_service.conf.sample

%files devel -f libpq-devel.lst
%_bindir/pg_config
%_includedir/*
%_libdir/libpq.so
%_libdir/pkgconfig/libpq.pc

%changelog
* Mon Jun 13 2022 duyiwei <duyiwei@kylinos.cn> - 13.7-1
- upgrade libpq to 13.7,fix CVE-2021-32027,CVE-2022-1552

* Thu May 19 2022 yangweidong <yangweidong9@huawei.com> - 11.16-1
- Upgrade libpq to 11.16, fix CVES: CVE-2021-32028 CVE-2021-3677 CVE-2021-23222

* Wed Sep 2 2020 chengzihan <chengzihan2@huawei.com> - 11.2-5
- Change actually numbers of version and release to macros

* Wed Aug 26 2020 chengzihan <chengzihan2@huawei.com> - 11.2-4
- Fix installing problem of libpq-devel

* Tue Nov 26 2019 openEuler Buildteam <buildteam@openeuler.org> - 11.2-3
- Package init
