# Tests require network access so fail in koji; build using --with tests to run them yourself %bcond_with tests # Noarch subpackages available from Fedora 10, RHEL 6 %global noarch_subpkgs 0%{?fedora} > 9 || 0%{?rhel} > 5 Name: GeoIP Version: 1.6.9 Release: 2%{?dist} Summary: Library for country/city/organization to IP address or hostname mapping Group: Development/Libraries License: LGPLv2+ URL: http://www.maxmind.com/app/c Source0: https://github.com/maxmind/geoip-api-c/releases/download/v%{version}/GeoIP-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -nu) BuildRequires: coreutils BuildRequires: gcc BuildRequires: make BuildRequires: sed BuildRequires: zlib-devel # CentOS Extras for EL-5 has GeoIP-data-20090201-1.el5.centos # and even an epoch bump in the GeoIP-data provide in GeoIP-GeoLite-data is # insufficient to persuade EL-5's yum to install it in preference to that old # package, so for EL-5 only, explicitly require GeoIP-GeoLite-data rather # than GeoIP-data (http://bugs.centos.org/view.php?id=8488) %if "%{?rhel}" == "5" Requires: GeoIP-GeoLite-data %else Requires: GeoIP-data %endif # For compatibility with original release of GeoIP in old distributions %if 0%{?fedora} < 22 && 0%{?rhel} < 8 Requires: geoipupdate %endif # Old name of GeoIP library package Obsoletes: geoip < %{version}-%{release} Provides: geoip = %{version}-%{release} %description GeoIP is a C library that enables the user to find the country that any IP address or hostname originates from. It uses file based databases that can optionally be updated on a weekly basis by installing the geoipupdate-cron (IPv4) and/or geoipupdate-cron6 (IPv6) packages. %package devel Summary: Development headers and libraries for GeoIP Group: Development/Libraries Requires: %{name} = %{version}-%{release} %if 0%{?fedora} < 11 || 0%{?rhel} < 6 Requires: pkgconfig %endif Provides: geoip-devel = %{version}-%{release} Obsoletes: geoip-devel < %{version}-%{release} %description devel Development headers and static libraries for building GeoIP-based applications. %prep %setup -q %build %configure --disable-static --disable-dependency-tracking # Kill bogus rpaths sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool make %{?_smp_mflags} %install rm -rf %{buildroot} make DESTDIR=%{buildroot} INSTALL="install -p" install # nix the stuff we don't need like .la files. rm -f %{buildroot}%{_libdir}/*.la %check # Tests require network access so fail in koji; build using --with tests to run them yourself %{?with_tests:LD_LIBRARY_PATH=%{buildroot}%{_libdir} make check} %clean rm -rf %{buildroot} %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %if 0%{?_licensedir:1} %license COPYING %else %doc COPYING %endif %doc AUTHORS ChangeLog NEWS.md README.md %{_bindir}/geoiplookup %{_bindir}/geoiplookup6 %{_libdir}/libGeoIP.so.1 %{_libdir}/libGeoIP.so.1.* %{_mandir}/man1/geoiplookup.1* %{_mandir}/man1/geoiplookup6.1* %files devel %{_includedir}/GeoIP.h %{_includedir}/GeoIPCity.h %{_libdir}/libGeoIP.so %{_libdir}/pkgconfig/geoip.pc %changelog * Wed Feb 03 2016 Fedora Release Engineering - 1.6.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Tue Jan 12 2016 Paul Howarth - 1.6.9-1 - Update to 1.6.9 - Allow compilation on older systems by relaxing the autoconf and automake minimum versions - Avoid potential problems in multi-threaded environments by consistently using pread() rather than read() - Fix various small issues reported by clang's static analyser - Fix a regression introduced in version 1.6.8, which caused GeoIP_database_info to erroneously return NULL * Sun Nov 1 2015 Paul Howarth - 1.6.7-1 - Update to 1.6.7 - Fixed a MSVC parser stack overflow when parsing 'regionName.c' and 'timeZone.c' (GH#54) - Updated region codes and timezones - When using 'GEOIP_MEMORY_CACHE' with an invalid database file, the search tree traversal could attempt to read memory outside of the memory allocated for the memory cache, resulting in a segmentation fault; a check was added to ensure that the traversal code does not try to read beyond the end of the file, whether in memory, memory mapped, or on disk - Previously the return values from file reads were ignored; we now check these values to ensure that there were no errors * Thu Jul 30 2015 Paul Howarth - 1.6.6-1 - Update to 1.6.6 - Replaced usage of deprecated fileno, read, and lseek on Visual Studio 2005+ with their ISO C++ conformant replacements (GH#55) - A warning about using a double as a float was fixed (GH#56) - Fixed segfault when doing a lookup on an empty database (GH#62) - Fixed a memcheck error from valgrind in the '_check_mtime' function (GH#60) - Fixed '_check_mtime' to check the return value of 'gettimeofday' rather than just assuming it worked * Tue Jun 16 2015 Fedora Release Engineering - 1.6.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Thu Apr 23 2015 Paul Howarth - 1.6.5-2 - Work around problems with old GeoIP-data package in CentOS 5 Extras repo (http://bugs.centos.org/view.php?id=8488) by requiring GeoIP-GeoLite-data rather than the virtual GeoIP-data for EL-5 builds only * Mon Mar 2 2015 Paul Howarth - 1.6.5-1 - Update to 1.6.5 - Fixed a segmentation fault in geoiplookup when the utility was passed an invalid database (#1180874) - Additional validation was added for the size used in the creation of the index cache (#832913) - Changed the code to only look up country codes by using functions that ensure that we do not try to look past the end of an array (GitHub #53) * Fri Feb 20 2015 Paul Howarth - 1.6.4-4 - Databases now unbundled to the GeoIP-GeoLite-data package - Drop long-unused perl helper scripts - Add explicit pkgconfig dependency for EL-5 build - Drop timestamp hack for configure, no longer needed * Tue Feb 10 2015 Paul Howarth - 1.6.4-3 - Sub-package the data; going forward, this would be better as a separate package, since it has separate upstream releases than the library * Fri Feb 6 2015 Paul Howarth - 1.6.4-2 - Only require geoipupdate prior to F-22, for back-compatibility - Use %%license where possible - GeoIP-devel provides geoip-devel as well as obsoleting it - Update bundled databases * Thu Jan 29 2015 Philip Prindeville - 1.6.4-1 - Require geoipupdate per Paul * Tue Jan 20 2015 Philip Prindeville - 1.6.4-0 - Version bump to 1.6.4 per bz #1158667 (okay, that bug was for 1.6.3) - Remove geoipupdate as it will be moving into its own package * Fri Aug 15 2014 Fedora Release Engineering - 1.5.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Fri Jun 06 2014 Fedora Release Engineering - 1.5.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Tue Feb 25 2014 Paul Howarth - 1.5.1-4 - Add %%check, so we can run tests by building using --with tests - Update databases from upstream * Fri Aug 02 2013 Fedora Release Engineering - 1.5.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Tue Jun 18 2013 Paul Howarth - 1.5.1-2 - Properly provide all of the GeoLite databases and their IPv6 equivalents, as per the geoip-geolite package that we're obsoleting/providing - Provide compatibility symlinks for database files that historically had different names in GeoIP and geoip-geolite - Don't distribute unbundled LICENSE files, as per packaging guidelines - Update license tag to reflect distribution of CC-BY-SA database content - No longer try to update the databases in %%post - Maintain timestamps where possible - Set up GeoIP.dat symlink in package and don't touch it again - Add update6 package to update the IPv6 databases; have to use wget for this rather than geoipupdate as the databases are still in beta * Wed Jun 12 2013 Philip Prindeville - 1.5.1-1 - Bump to version 1.5.1 - Fix exit codes for various situations (MaxMind support #129155) - Use versioned obsoletes/provides for geoip-geolite - Update UTF8 patch - Change symlink from GeoIP-initial.dat to GeoLiteCountry.dat if we had a successful download and now have the latter file. * Mon Jun 10 2013 Philip Prindeville - 1.5.0-7 - Annotate conflict with geoip-geolite package (#968074) * Mon Jun 10 2013 Paul Howarth - 1.5.0-6 - Update sub-package requires main package for geoipupdate script * Sat Jun 8 2013 Paul Howarth - 1.5.0-5 - Make GeoIP.dat -> GeoIP-initial.dat symlink in %%install, not %%post, and don't %%ghost it - Run geoipupdate silently in %%post and cron job - Create empty database files for %%ghost to work with old rpm versions - Don't try to use noarch subpackages on old rpm versions - Update %%description to mention database updates - Drop outdated README.Fedora * Sat Jun 08 2013 Philip Prindeville - 1.5.0-4 - Revert ability to replace 3rd-party package * Fri Jun 07 2013 Philip Prindeville - 1.5.0-3 - Add attributes for %%ghost files * Fri Jun 07 2013 Philip Prindeville - 1.5.0-2 - Make update subpackage be noarch. * Fri Jun 07 2013 Philip Prindeville - 1.5.0-1 - Version bump to 1.5.0 - Have GeoIP.dat be a symlink to the real data, and install the canned GeoIP.dat as GeoIP-initial.dat - Change config as per Boris' instructions to use 'lite' databases which are regularly updated. - Add pkgconfig (.pc) file into devel subpackage - Add cron support for refreshing the lite databases and make a separate subpackage. * Sun Mar 24 2013 Paul Howarth - 1.4.8-6 - Fix config.guess and config.sub to add aarch64 support (#925403) * Wed Feb 13 2013 Fedora Release Engineering - 1.4.8-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Mon Oct 22 2012 Paul Howarth - 1.4.8-4 - libGeoIPUpdate and geoipupdate (which is linked against it) are GPL-licensed rather than LGPL-licensed (#840896) - Don't package generic INSTALL file (#661625) - Kill bogus rpaths on x86_64 - Hardcode library sonames in %%files list to avoid nasty surprises in the future - Drop %%defattr, redundant since rpm 4.4 - Recode docs as UTF-8 - Don't use macros for commands - Use tabs * Wed Jul 18 2012 Fedora Release Engineering - 1.4.8-3.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Thu Jan 12 2012 Fedora Release Engineering - 1.4.8-2.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Tue Sep 6 2011 Michael Fleming - 1.4.8-1.1 - Remove -ipv6 patch - Bump to 1.4.8 release * Wed Feb 09 2011 Fedora Release Engineering - 1.4.7-0.2.20090931cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Mon Aug 31 2009 Matt Domsch - 1.4.7.0.1.20090931 - apply CVS HEAD 20090931 which includes IPv6 functions * Fri Jul 24 2009 Fedora Release Engineering - 1.4.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sun Mar 08 2009 Michael Fleming - 1.4.6-1 - Add geoiplookup6 man page - Update to 1.4.6 * Mon Feb 23 2009 Fedora Release Engineering - 1.4.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Sat Nov 29 2008 Michael Fleming 1.4.5-2 - Update to 1.4.5 - Fix database URL locations in Perl helper scripts * Tue Feb 19 2008 Fedora Release Engineering - 1.4.4-2 - Autorebuild for GCC 4.3 * Mon Jan 28 2008 Michael Fleming 1.4.4-1 - New upstream release. * Wed Sep 5 2007 Michael Fleming 1.4.3-1 - New upstream release. - Fix GeoIPCity fetcher script - Update License tag * Mon Feb 12 2007 Michael Fleming 1.4.2-1 - New upstream release. * Mon Jan 8 2007 Michael Fleming 1.4.1-2 - License is actually LGPL now. * Sun Jan 7 2007 Michael Fleming 1.4.1-1 - New upstream release - Add fetch-geoipdata* scripts to pull free databases automatically if desired (bz #198137) - README.fedora added to briefly explain above. * Mon Nov 27 2006 Michael Fleming 1.4.0-4 - Fix %%install scripts to satisfy newer mock builds * Sun Sep 3 2006 Michael Fleming 1.4.0-3 - Upstream upgrade - Added LICENSE.txt file to %%doc, covering GeoIP country/city data license (bz #198137) * Mon May 15 2006 Michael Fleming 1.3.17-1 - New upstream release (minor fixes) * Mon May 1 2006 Michael Fleming 1.3.16-1 - New upstream release - Add INSTALL document to package. * Sat Feb 18 2006 Michael Fleming 1.3.14-3 - Fix Obsoletes/Provides for old "geoip"-convention packages - Move .so symlinks to -devel where they should be * Fri Feb 10 2006 Michael Fleming 1.3.14-2 - Remamed to match upstream tarball name - Removed static libraries - Added symlinks to packages - Mark config file noreplace * Sun Feb 5 2006 Michael Fleming 1.3.14-1 - Initial review package for Extras