Compare commits

..

2 commits

Author SHA1 Message Date
Remi Collet
3ac9d54227 v1.11.0
(cherry picked from commit 02545757d2)
2021-10-19 09:28:17 +02:00
Remi Collet
c86ebd874f v1.10.1
(cherry picked from commit 92a127ada3)
2021-04-15 09:23:51 +02:00
3 changed files with 72 additions and 130 deletions

5
.gitignore vendored
View file

@ -9,8 +9,3 @@ clog
/php-maxminddb-1.10.0-07f84d9.tgz
/php-maxminddb-1.10.1-569bd44.tgz
/php-maxminddb-1.11.0-f7cc1a1.tgz
/php-maxminddb-1.11.1-1e66f73.tgz
/php-maxminddb-1.12.0-5b2d7a7.tgz
/php-maxminddb-1.12.1-815939e.tgz
/php-maxminddb-1.13.0-b298986.tgz
/php-maxminddb-1.13.1-2194f58.tgz

View file

@ -3,44 +3,35 @@
#
# remirepo spec file for php-maxminddb
#
# SPDX-FileCopyrightText: Copyright 2018-2025 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
# Copyright (c) 2018-2021 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
%global gh_commit 2194f58d0f024ce923e685cdf92af3daf9951908
%global gh_commit f7cc1a1472868f25a02636c99d1054232292bc26
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner maxmind
%global gh_project MaxMind-DB-Reader-php
# Extension
%global pie_vend maxmind-db
%global pie_proj reader-ext
%global pecl_name maxminddb
%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}}
%global ini_name 40-%{pecl_name}.ini
# pure PHP library
%global pk_vendor maxmind-db
%global pk_project reader
%global _configure ../ext/configure
%if 0%{?fedora}
%bcond_without tests
%else
%bcond_with tests
%endif
%global with_tests 0%{!?_without_tests:1}
Summary: MaxMind DB Reader extension
Name: php-maxminddb
Version: 1.13.1
Version: 1.11.0
Release: 1%{?dist}
License: Apache-2.0
License: ASL 2.0
URL: https://github.com/%{gh_owner}/%{gh_project}
Source0: %{name}-%{version}-%{gh_short}.tgz
Source1: makesrc.sh
ExcludeArch: %{ix86}
BuildRequires: make
BuildRequires: gcc
BuildRequires: php-devel >= 7.2
@ -59,9 +50,6 @@ Provides: php-pecl-%{pecl_name} = %{version}-%{release}
Provides: php-pecl-%{pecl_name}%{?_isa} = %{version}-%{release}
Provides: php-pecl(%{pecl_name}) = %{version}
Provides: php-pecl(%{pecl_name})%{?_isa} = %{version}
# PIE
Provides: %{?scl_prefix}php-pie(%{pie_vend}/%{pie_proj}) = %{version}
Provides: %{?scl_prefix}php-%{pie_vend}-%{pie_proj} = %{version}
%description
@ -79,7 +67,7 @@ Summary: MaxMind DB Reader
BuildArch: noarch
BuildRequires: php-fedora-autoloader-devel
%if %{with tests}
%if %{with_tests}
BuildRequires: php-bcmath
BuildRequires: php-gmp
# from composer.json "require-dev": {
@ -102,7 +90,7 @@ Recommends: php-bcmath
Recommends: php-gmp
Recommends: php-maxminddb
# from composer.json "conflict": {
# "ext-maxminddb": "<1.11.1,>=2.0.0"
# "ext-maxminddb": "<1.10.0,>=2.0.0"
Conflicts: php-maxminddb < %{version}
# Weak dependencies on databases
Recommends: geolite2-country
@ -110,8 +98,6 @@ Suggests: geolite2-city
# From phpcompatifo report for 1.3.0
Requires: php-filter
Requires: php-spl
# Autoloader
Requires: php-composer(fedora/autoloader)
Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version}
@ -137,7 +123,10 @@ Autoloader: %{_datadir}/php/MaxMind/Db/Reader/autoload.php
--output src/MaxMind/Db/Reader/autoload.php \
src/MaxMind/Db
cd ext
mv ext NTS
cd NTS
# Sanity check, really often broken
extver=$(sed -n '/#define PHP_MAXMINDDB_VERSION/{s/.* "//;s/".*$//;p}' php_maxminddb.h)
if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then
@ -146,6 +135,11 @@ if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then
fi
cd ..
%if %{with_zts}
# duplicate for ZTS build
cp -pr NTS ZTS
%endif
# Drop in the bit of configuration
cat << 'EOF' | tee %{ini_name}
; Enable '%{pecl_name}' extension module
@ -154,29 +148,39 @@ EOF
%build
cd ext
%{__phpize}
sed -e 's/INSTALL_ROOT/DESTDIR/' -i build/Makefile.global
cd NTS
%{_bindir}/phpize
%configure \
--with-php-config=%{__phpconfig} \
--with-php-config=%{_bindir}/php-config \
--with-libdir=%{_lib} \
--with-maxminddb
make %{?_smp_mflags}
%make_build
%if %{with_zts}
cd ../ZTS
%{_bindir}/zts-phpize
%configure \
--with-php-config=%{_bindir}/zts-php-config \
--with-libdir=%{_lib} \
--with-maxminddb
make %{?_smp_mflags}
%endif
%install
: Install the extension
%make_install -C ext
: Install XML package description
# Install XML package description
install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml
: Install the extension
# Install the NTS stuff
make -C NTS install INSTALL_ROOT=%{buildroot}
install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
: Install the library
%if %{with_zts}
# Install the ZTS stuff
make -C ZTS install INSTALL_ROOT=%{buildroot}
install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
%endif
mkdir -p %{buildroot}%{_datadir}/php/MaxMind
cp -pr src/MaxMind/Db %{buildroot}%{_datadir}/php/MaxMind/Db
@ -185,20 +189,39 @@ cp -pr src/MaxMind/Db %{buildroot}%{_datadir}/php/MaxMind/Db
: Minimal load test for NTS extension
%{__php} --no-php-ini \
--define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \
--modules | grep '^%{pecl_name}$'
--modules | grep %{pecl_name}
%if %{with_zts}
: Minimal load test for ZTS extension
%{__ztsphp} --no-php-ini \
--define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \
--modules | grep %{pecl_name}
%endif
%if %{with_tests}
ret=0
cd ext
cd NTS
: Upstream test suite for NTS extension
TEST_PHP_EXECUTABLE=%{__php} \
TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \
%{__php} -n run-tests.php -q --show-diff || ret=1
NO_INTERACTION=1 \
REPORT_EXIT_STATUS=1 \
%{__php} -n run-tests.php --show-diff || ret=1
%if %{with_zts}
cd ../ZTS
: Upstream test suite for ZTS extension
TEST_PHP_EXECUTABLE=%{__ztsphp} \
TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \
NO_INTERACTION=1 \
REPORT_EXIT_STATUS=1 \
%{__ztsphp} -n run-tests.php --show-diff || ret=1
%endif
%if %{with tests}
cd ..
: Upstream test suite for the library
for cmd in php80 php81 php82 php83 php84; do
for cmd in php php72 php73 php74 php80 php81; do
if which $cmd; then
$cmd %{_bindir}/phpunit8 \
--bootstrap %{buildroot}%{_datadir}/php/MaxMind/Db/Reader/autoload.php \
@ -216,6 +239,7 @@ exit $ret
%files
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc *.md
%{pecl_xmldir}/%{name}.xml
@ -223,6 +247,11 @@ exit $ret
%config(noreplace) %{php_inidir}/%{ini_name}
%{php_extdir}/%{pecl_name}.so
%if %{with_zts}
%config(noreplace) %{php_ztsinidir}/%{ini_name}
%{php_ztsextdir}/%{pecl_name}.so
%endif
%files -n php-%{pk_vendor}-%{pk_project}
%license LICENSE
@ -233,94 +262,12 @@ exit $ret
%changelog
* Sat Nov 22 2025 Remi Collet <remi@remirepo.net> - 1.13.1-1
- update to 1.13.1 (no changes)
- add pie virtual provides
* Fri Nov 21 2025 Remi Collet <remi@remirepo.net> - 1.13.0-1
- update to 1.13.0
* Wed Sep 17 2025 Remi Collet <remi@remirepo.net> - 1.12.1-3
- rebuild for https://fedoraproject.org/wiki/Changes/php85
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue May 6 2025 Remi Collet <remi@remirepo.net> - 1.12.1-1
- update to 1.12.1
- re-license spec file to CECILL-2.1
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Fri Nov 15 2024 Remi Collet <remi@remirepo.net> - 1.12.0-1
- update to 1.12.0
* Fri Oct 18 2024 Remi Collet <remi@fedoraproject.org> - 1.11.1-7
- modernize the spec file
* Mon Oct 14 2024 Remi Collet <remi@fedoraproject.org> - 1.11.1-6
- rebuild for https://fedoraproject.org/wiki/Changes/php84
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Apr 12 2024 Remi Collet <remi@remirepo.net> - 1.11.1-4
- drop 32-bit support
https://fedoraproject.org/wiki/Changes/php_no_32_bit
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Dec 4 2023 Remi Collet <remi@remirepo.net> - 1.11.1-1
- update to 1.11.1
* Tue Oct 03 2023 Remi Collet <remi@remirepo.net> - 1.11.0-11
- rebuild for https://fedoraproject.org/wiki/Changes/php83
* Mon Oct 2 2023 Remi Collet <remi@remirepo.net> - 1.11.0-10
- add missing dependency on fedora/autoloader
- build out of sources tree
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Mar 31 2023 Remi Collet <remi@remirepo.net> - 1.11.0-8
- use SPDX license ID
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Oct 05 2022 Remi Collet <remi@remirepo.net> - 1.11.0-6
- rebuild for https://fedoraproject.org/wiki/Changes/php82
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Dec 10 2021 Remi Collet <remi@remirepo.net> - 1.11.0-3
- disable library test suite for EL build
* Thu Oct 28 2021 Remi Collet <remi@remirepo.net> - 1.11.0-2
- rebuild for https://fedoraproject.org/wiki/Changes/php81
* Tue Oct 19 2021 Remi Collet <remi@remirepo.net> - 1.11.0-1
- update to 1.11.0
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.10.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Thu Apr 15 2021 Remi Collet <remi@remirepo.net> - 1.10.1-1
- update to 1.10.1
* Fri Mar 5 2021 Remi Collet <remi@fedoraproject.org> - 1.10.0-2
- rebuild for https://fedoraproject.org/wiki/Changes/php80
* Wed Feb 10 2021 Remi Collet <remi@remirepo.net> - 1.10.0-1
- update to 1.10.0

View file

@ -1 +1 @@
SHA512 (php-maxminddb-1.13.1-2194f58.tgz) = 4862dd4afcb899fabd91dfa6a6471aa5bf06f2a4b1c5929d68ad72774c8d83e3ea17f2e2bab557b2d27f7fe2267854c391e19443f52e3667ce04614f3e9cf8d0
SHA512 (php-maxminddb-1.11.0-f7cc1a1.tgz) = d0d7ce79ed152ba9277997515cade9a8c7a043d1a23a27e6838ad48b3e4f8854327356f3a1d30dff156a203ec65329d3f1d936a26a1e9ee5ae87c4ff400f2997