%{?scl: %scl_package php-pecl-geoip} %{!?php_inidir: %global php_inidir %{_sysconfdir}/php.d} %{!?__pecl: %global __pecl %{_bindir}/pecl} %{!?__php: %global __php %{_bindir}/php} %define pecl_name geoip %global with_zts 0%{?__ztsphp:1} %if "%{php_version}" < "5.6" %global ini_name %{pecl_name}.ini %else %global ini_name 40-%{pecl_name}.ini %endif Name: %{?scl_prefix}php-pecl-geoip Version: 1.1.0 Release: 2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} Summary: Extension to map IP addresses to geographic places Group: Development/Languages License: PHP URL: http://pecl.php.net/package/%{pecl_name} Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz # http://svn.php.net/viewvc?view=revision&revision=333464 Patch0: geoip-build.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: GeoIP-devel BuildRequires: %{?scl_prefix}php-devel BuildRequires: %{?scl_prefix}php-pear Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} Requires(post): %{__pecl} Requires(postun): %{__pecl} Provides: %{?scl_prefix}php-%{pecl_name} = %{version} Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version} Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version} Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version} %if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} # Other third party repo stuff Obsoletes: php53-pecl-%{pecl_name} Obsoletes: php53u-pecl-%{pecl_name} Obsoletes: php54-pecl-%{pecl_name} Obsoletes: php54w-pecl-%{pecl_name} %if "%{php_version}" > "5.5" Obsoletes: php55u-pecl-%{pecl_name} Obsoletes: php55w-pecl-%{pecl_name} %endif %if "%{php_version}" > "5.6" Obsoletes: php56u-pecl-%{pecl_name} Obsoletes: php56w-pecl-%{pecl_name} %endif %endif %if 0%{?fedora} < 20 && 0%{?rhel} < 7 # Filter shared private %{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$} %{?filter_setup} %endif %description This PHP extension allows you to find the location of an IP address City, State, Country, Longitude, Latitude, and other information as all, such as ISP and connection type. It makes use of Maxminds geoip database %prep %setup -c -q mv %{pecl_name}-%{version} NTS cd NTS %patch0 -p0 -b .svn extver=$(sed -n '/#define PHP_GEOIP_VERSION/{s/.* "//;s/".*$//;p}' php_geoip.h) if test "x${extver}" != "x%{version}"; then : Error: Upstream version is ${extver}, expecting %{version}. exit 1 fi cd .. cat > %{ini_name} << 'EOF' ; Enable %{pecl_name} extension module extension=%{pecl_name}.so EOF %if %{with_zts} cp -pr NTS ZTS %endif %build cd NTS %{_bindir}/phpize %configure --with-php-config=%{_bindir}/php-config make %{?_smp_mflags} %if %{with_zts} cd ../ZTS %{_bindir}/zts-phpize %configure --with-php-config=%{_bindir}/zts-php-config make %{?_smp_mflags} %endif %install rm -rf %{buildroot} make -C NTS install INSTALL_ROOT=%{buildroot} %if %{with_zts} make -C ZTS install INSTALL_ROOT=%{buildroot} install -Dpm644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} %endif # Install XML package description install -Dpm 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml # install config file install -Dpm644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} # Test & Documentation for i in $(grep 'role="test"' package.xml | sed -e 's/^.*name="//;s/".*$//') do install -Dpm 644 NTS/$i %{buildroot}%{pecl_testdir}/%{pecl_name}/$i done for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//') do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i done %check : Minimal load test for NTS extension %{__php} -n \ -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \ -m | grep %{pecl_name} %if %{with_zts} : Minimal load test for ZTS extension %{__ztsphp} -n \ -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \ -m | grep %{pecl_name} %endif cd NTS TEST_PHP_EXECUTABLE=%{__php} \ REPORT_EXIT_STATUS=1 \ NO_INTERACTION=1 \ %{__php} run-tests.php \ -n -q \ -d extension_dir=modules \ -d extension=%{pecl_name}.so %clean rm -rf %{buildroot} %post %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : %postun if [ $1 -eq 0 ] ; then %{pecl_uninstall} %{pecl_name} >/dev/null || : fi %files %defattr(-,root,root,-) %doc %{pecl_docdir}/%{pecl_name} %doc %{pecl_testdir}/%{pecl_name} %config(noreplace) %{php_inidir}/%{ini_name} %{php_extdir}/%{pecl_name}.so %{pecl_xmldir}/%{name}.xml %if %{with_zts} %{php_ztsextdir}/%{pecl_name}.so %config(noreplace) %{php_ztsinidir}/%{ini_name} %endif %changelog * Mon Aug 25 2014 Remi Collet - 1.1.0-2 - improve SCL build * Sat May 03 2014 Remi Collet - 1.1.0-1 - Update to 1.1.0 (beta) - upstream patch for old auto* version (rhel <= 6) * Wed Apr 9 2014 Remi Collet - 1.0.8-8 - add numerical prefix to extension configuration file * Wed Mar 19 2014 Remi Collet - 1.0.8-7 - allow SCL build * Sun Mar 2 2014 Remi Collet - 1.0.8-6 - cleaups - install doc in pecl_docdir - install tests in pecl_testdir - add missing License file * Fri Nov 30 2012 Remi Collet - 1.0.8-3.1 - also provides php-geoip * Fri Sep 7 2012 Remi Collet - 1.0.8-3 - Obsoletes php53*, php54* on EL * Sun Nov 13 2011 Remi Collet - 1.0.8-2 - build against php 5.4 * Mon Oct 24 2011 Remi Collet - 1.0.8-1 - update to 1.0.8 * Sat Oct 15 2011 Remi Collet - 1.0.7-7 - upstream patch for https://bugs.php.net/bug.php?id=60066 * Wed Oct 05 2011 Remi Collet - 1.0.7-6 - ZTS extension - spec cleanups - run test suite - patch for https://bugs.php.net/bug.php?id=60066 - patch for https://bugs.php.net/bug.php?id=59804 * Fri Jul 15 2011 Andrew Colin Kissa - 1.0.7-6 - Fix bugzilla #715693 * Wed Feb 09 2011 Fedora Release Engineering - 1.0.7-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Sun Jul 26 2009 Fedora Release Engineering - 1.0.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sun Jul 12 2009 Remi Collet 1.0.7-3 - rebuild for new PHP 5.3.0 ABI (20090626) * Mon Jun 22 2009 Andrew Colin Kissa - 1.0.7-2 - Fix timestamps on installed files * Sun Jun 14 2009 Andrew Colin Kissa - 1.0.7-1 - Initial RPM package