-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGeoIP.spec
408 lines (325 loc) · 16.1 KB
/
GeoIP.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
# Tests require network access so fail in koji; build using --with tests to run them yourself
%bcond_with tests
Name: GeoIP
Version: 1.6.12
Release: 7%{?dist}
Summary: Library for country/city/organization to IP address or hostname mapping
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
Source1: data.tar.gz
BuildRequires: coreutils
BuildRequires: gcc
BuildRequires: make
BuildRequires: sed
BuildRequires: zlib-devel
Requires: GeoIP-data
# 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
Requires: %{name} = %{version}-%{release}
Provides: geoip-devel = %{version}-%{release}
Obsoletes: geoip-devel < %{version}-%{release}
%package data
Summary: Database files
Requires: %{name} = %{version}-%{release}
Provides: %{name}-data
%description devel
Development headers and static libraries for building GeoIP-based applications.
%description data
Static snapshot of GeoIP databases
%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
make DESTDIR=%{buildroot} INSTALL="install -p" install
mkdir -p %{buildroot}/usr/share/GeoIP
tar xfvz %{SOURCE1} -C %{buildroot}/usr/share/GeoIP
# 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}
%ldconfig_scriptlets
%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 data
%{_datadir}/%{name}/GeoIPASNum-initial.dat
%{_datadir}/%{name}/GeoIPASNumv6-initial.dat
%{_datadir}/%{name}/GeoIPCity-initial.dat
%{_datadir}/%{name}/GeoIPCityv6-initial.dat
%{_datadir}/%{name}/GeoIPCity.dat
%{_datadir}/%{name}/GeoIPCityv6.dat
%{_datadir}/%{name}/GeoIPASNum.dat
%{_datadir}/%{name}/GeoIPASNumv6.dat
%files devel
%{_includedir}/GeoIP.h
%{_includedir}/GeoIPCity.h
%{_libdir}/libGeoIP.so
%{_libdir}/pkgconfig/geoip.pc
%changelog
* Thu Nov 28 2019 Thomas Andrejak <[email protected]> - 1.6.12-7
- Rebuilt for EPEL8
* Wed Jul 24 2019 Fedora Release Engineering <[email protected]> - 1.6.12-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <[email protected]> - 1.6.12-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <[email protected]> - 1.6.12-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <[email protected]> - 1.6.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Sat Feb 03 2018 Igor Gnatenko <[email protected]> - 1.6.12-2
- Switch to %%ldconfig_scriptlets
* Thu Jan 18 2018 Paul Howarth <[email protected]> - 1.6.12-1
- Update to 1.6.12
- Populate metro and area code when performing lookups in IPv6 City
databases; previously this was only done when using IPv4 City
databases
* Wed Aug 02 2017 Fedora Release Engineering <[email protected]> - 1.6.11-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <[email protected]> - 1.6.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue May 16 2017 Paul Howarth <[email protected]> - 1.6.11-1
- Update to 1.6.11
- Fix use of a NULL pointer when opening a corrupt database with 'GeoIP_open'
(GH#87)
- Drop EL-5 support
- Drop redundant BuildRoot: and Group: tags
- Drop EL5-only dependency on GeoIP-GeoLite-data
- Drop explicit pkgconfig dependency in devel package
- Drop buildroot cleaning in %%install section
- Drop explicit %%clean section
* Thu Mar 30 2017 Paul Howarth <[email protected]> - 1.6.10-1
- Update to 1.6.10
- GeoIP_database_info now returns the full version string rather than
incorrectly truncating it (GH#79)
- This API is now distributed with a small test copy of GeoIP.dat rather than
a full copy
- Fix issue where Visual Studio 2015 was optimizing out initialization code
(GH#81)
- Fix test/benchmark on Windows (GH#75)
* Sun Feb 26 2017 Paul Howarth <[email protected]> - 1.6.9-4
- Fix GeoIP_database_info truncation issue (#1426853, GH#79, GH#80)
* Fri Feb 10 2017 Fedora Release Engineering <[email protected]> - 1.6.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Feb 03 2016 Fedora Release Engineering <[email protected]> - 1.6.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Jan 12 2016 Paul Howarth <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 1.6.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Apr 23 2015 Paul Howarth <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 1.6.4-1
- Require geoipupdate per Paul
* Tue Jan 20 2015 Philip Prindeville <[email protected]> - 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 <[email protected]> - 1.5.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Jun 06 2014 Fedora Release Engineering <[email protected]> - 1.5.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Feb 25 2014 Paul Howarth <[email protected]> - 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 <[email protected]> - 1.5.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Tue Jun 18 2013 Paul Howarth <[email protected]> - 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 <[email protected]> - 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 <[email protected]> - 1.5.0-7
- Annotate conflict with geoip-geolite package (#968074)
* Mon Jun 10 2013 Paul Howarth <[email protected]> - 1.5.0-6
- Update sub-package requires main package for geoipupdate script
* Sat Jun 8 2013 Paul Howarth <[email protected]> - 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 <[email protected]> - 1.5.0-4
- Revert ability to replace 3rd-party package
* Fri Jun 07 2013 Philip Prindeville <[email protected]> - 1.5.0-3
- Add attributes for %%ghost files
* Fri Jun 07 2013 Philip Prindeville <[email protected]> - 1.5.0-2
- Make update subpackage be noarch.
* Fri Jun 07 2013 Philip Prindeville <[email protected]> - 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 <[email protected]> - 1.4.8-6
- Fix config.guess and config.sub to add aarch64 support (#925403)
* Wed Feb 13 2013 Fedora Release Engineering <[email protected]> - 1.4.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Oct 22 2012 Paul Howarth <[email protected]> - 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 <[email protected]> - 1.4.8-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Thu Jan 12 2012 Fedora Release Engineering <[email protected]> - 1.4.8-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Tue Sep 6 2011 Michael Fleming <[email protected]> - 1.4.8-1.1
- Remove -ipv6 patch
- Bump to 1.4.8 release
* Wed Feb 09 2011 Fedora Release Engineering <[email protected]> - 1.4.7-0.2.20090931cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Aug 31 2009 Matt Domsch <[email protected]> - 1.4.7.0.1.20090931
- apply CVS HEAD 20090931 which includes IPv6 functions
* Fri Jul 24 2009 Fedora Release Engineering <[email protected]> - 1.4.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Sun Mar 08 2009 Michael Fleming <[email protected]> - 1.4.6-1
- Add geoiplookup6 man page
- Update to 1.4.6
* Mon Feb 23 2009 Fedora Release Engineering <[email protected]> - 1.4.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Sat Nov 29 2008 Michael Fleming <[email protected]> 1.4.5-2
- Update to 1.4.5
- Fix database URL locations in Perl helper scripts
* Tue Feb 19 2008 Fedora Release Engineering <[email protected]> - 1.4.4-2
- Autorebuild for GCC 4.3
* Mon Jan 28 2008 Michael Fleming <[email protected]> 1.4.4-1
- New upstream release.
* Wed Sep 5 2007 Michael Fleming <[email protected]> 1.4.3-1
- New upstream release.
- Fix GeoIPCity fetcher script
- Update License tag
* Mon Feb 12 2007 Michael Fleming <[email protected]> 1.4.2-1
- New upstream release.
* Mon Jan 8 2007 Michael Fleming <[email protected]> 1.4.1-2
- License is actually LGPL now.
* Sun Jan 7 2007 Michael Fleming <[email protected]> 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 <[email protected]> 1.4.0-4
- Fix %%install scripts to satisfy newer mock builds
* Sun Sep 3 2006 Michael Fleming <[email protected]> 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 <[email protected]> 1.3.17-1
- New upstream release (minor fixes)
* Mon May 1 2006 Michael Fleming <[email protected]> 1.3.16-1
- New upstream release
- Add INSTALL document to package.
* Sat Feb 18 2006 Michael Fleming <[email protected]> 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 <[email protected]> 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 <[email protected]> 1.3.14-1
- Initial review package for Extras