geoip/geoip.spec

Sat, 21 May 2011 22:05:42 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 21 May 2011 22:05:42 +0200
changeset 340
870131689a5c
parent 152
7b468483efb4
child 603
72fb5257eb82
permissions
-rw-r--r--

Correct diverse buildconf of upstream release and reconcile packaging somewhat.
These changes stem from the obvious changes in the latest vendor release, but
from discussions with trolls Daniel and Oswald as well regarding build config.

This commital follows conclusion of buildconf adjustments to allow the new
vendor version to build on Linux AMD64, but is incomplete as many packaging
comments show. The next series of changes focus on Solaris IA32 and reduction
of buildconf adjustments testing old problems comprehensively in anticipation
of discussion at the upcoming Nokia Contributor Summit in Berlin.

michael@152 1 ##
michael@152 2 ## geoip.spec -- OpenPKG RPM Package Specification
michael@152 3 ## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
michael@152 4 ##
michael@152 5 ## Permission to use, copy, modify, and distribute this software for
michael@152 6 ## any purpose with or without fee is hereby granted, provided that
michael@152 7 ## the above copyright notice and this permission notice appear in all
michael@152 8 ## copies.
michael@152 9 ##
michael@152 10 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
michael@152 11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
michael@152 12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
michael@152 13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
michael@152 14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
michael@152 15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
michael@152 16 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
michael@152 17 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
michael@152 18 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
michael@152 19 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
michael@152 20 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
michael@152 21 ## SUCH DAMAGE.
michael@152 22 ##
michael@152 23
michael@152 24 # package version
michael@152 25 %define V_api_c 1.4.6
michael@152 26 %define V_api_pl 1.37
michael@152 27
michael@152 28 # package information
michael@152 29 Name: geoip
michael@152 30 Summary: Geographic IP Resolution
michael@153 31 URL: http://www.maxmind.com/app/ip-location
michael@153 32 Vendor: MaxMind Incorporated
michael@152 33 Packager: OpenPKG Foundation e.V.
michael@152 34 Distribution: OpenPKG Community
michael@152 35 Class: PLUS
michael@152 36 Group: Mapping
michael@152 37 License: GPL
michael@152 38 Version: %{V_api_c}
michael@153 39 Release: 20090408
michael@152 40
michael@152 41 # package options
michael@152 42 %option with_perl no
michael@152 43
michael@152 44 # list of sources
michael@152 45 Source0: http://geolite.maxmind.com/download/geoip/api/c/GeoIP-%{V_api_c}.tar.gz
michael@152 46 Source1: http://www.cpan.org/modules/by-module/Geo/Geo-IP-%{V_api_pl}.tar.gz
michael@153 47 Source2: http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
michael@152 48
michael@152 49 # build information
michael@152 50 Prefix: %{l_prefix}
michael@152 51 BuildRoot: %{l_buildroot}
michael@153 52 BuildPreReq: OpenPKG, openpkg >= 20040130, zlib, gcc
michael@153 53 PreReq: OpenPKG, openpkg >= 20040130, zlib
michael@152 54 AutoReq: no
michael@152 55 AutoReqProv: no
michael@152 56
michael@152 57 %description
michael@153 58 GeoIP is a C library that enables the user to find the country
michael@153 59 that any IP address or hostname originates from. It uses a file
michael@153 60 based database containing IP blocks as keys and countries as
michael@153 61 values and claims to achieve over 99% accuracy. This database
michael@153 62 should be more complete and accurate than using reverse DNS
michael@153 63 lookups.
michael@153 64
michael@153 65 This module can be used to automatically select the geographically
michael@153 66 closest mirror, to analyze your web server logs to determine the
michael@153 67 countries of your visitors, for credit card fraud detection, and
michael@153 68 for software export controls.
michael@152 69
michael@152 70 %track
michael@152 71 prog geoip = {
michael@152 72 version = %{version}
michael@152 73 url = http://geolite.maxmind.com/download/geoip/api/c/
michael@152 74 regex = GeoIP-(__VER__)\.tar\.gz
michael@152 75 }
michael@152 76 prog geoip:perl = {
michael@152 77 version = %{V_api_pl}
michael@152 78 url = http://www.cpan.org/modules/by-module/Geo/
michael@152 79 regex = Geo-IP-(__VER__)\.tar\.gz
michael@152 80 }
michael@152 81
michael@152 82 %prep
michael@152 83 %setup -q -n GeoIP-%{V_api_c}
michael@153 84 ( cd data && %{l_gzip} -cd %{SOURCE2} >GeoLiteCity.dat) || exit $?
michael@152 85 %if "%{with_perl}" == "yes"
michael@152 86 %setup -q -T -D -a 1 -n GeoIP-%{V_api_c}
michael@152 87 %endif
michael@152 88 %{l_shtool} subst \
michael@152 89 -e 's;-Wall;;g' \
michael@152 90 -e 's;-ansi;;g' \
michael@152 91 Makefile.in */Makefile.in
michael@152 92
michael@152 93 %build
michael@152 94 echo "ac_cv_func_gethostbyname_r=no" >config.cache
michael@152 95 CC="%{l_cc}" \
michael@152 96 CFLAGS="%{l_cflags -O}" \
michael@152 97 CPPFLAGS="%{l_cppflags}" \
michael@152 98 LDFLAGS="%{l_ldflags}" \
michael@152 99 LIBS="-lz" \
michael@153 100 GREP="grep" \
michael@152 101 ./configure \
michael@152 102 --cache-file=./config.cache \
michael@152 103 --prefix=%{l_prefix} \
michael@152 104 --sysconfdir=%{l_prefix}/etc/geoip \
michael@152 105 --mandir=$RPM_BUILD_ROOT%{l_prefix}/man \
michael@152 106 --disable-shared
michael@152 107 %{l_make} %{l_mflags}
michael@152 108 %if "%{with_perl}" == "yes"
michael@152 109 %{l_prefix}/bin/perl-openpkg prepare
michael@152 110 %{l_prefix}/bin/perl-openpkg -d Geo-IP-%{V_api_pl} --verbose \
michael@152 111 --args LIBS="-L../libGeoIP/.libs" \
michael@152 112 --args INC="-I../libGeoIP" \
michael@152 113 configure build
michael@152 114 %endif
michael@152 115
michael@152 116 %install
michael@152 117 rm -rf $RPM_BUILD_ROOT
michael@152 118 %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix} \
michael@152 119 $RPM_BUILD_ROOT%{l_prefix}/man \
michael@152 120 $RPM_BUILD_ROOT%{l_prefix}/man/man1
michael@153 121 %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
michael@153 122 %{l_shtool} install -c -m 644 \
michael@153 123 data/GeoLiteCity.dat $RPM_BUILD_ROOT%{l_prefix}/share/GeoIP
michael@152 124 %if "%{with_perl}" == "yes"
michael@152 125 %{l_prefix}/bin/perl-openpkg -d Geo-IP-%{V_api_pl} install
michael@152 126 %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup
michael@152 127 %else
michael@152 128 >perl-openpkg-files
michael@152 129 %endif
michael@152 130 strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
michael@152 131 rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/geoip/GeoIP.conf.default
michael@152 132 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} `cat perl-openpkg-files`
michael@152 133
michael@152 134 %files -f files
michael@152 135
michael@152 136 %clean
michael@152 137 rm -rf $RPM_BUILD_ROOT
michael@152 138

mercurial