Also make geoip package rdepend on geoip-database and
add symbolic link to GeoIPCity.dat.

Signed-off-by: Joe Slater <[email protected]>
---
 .../recipes-support/geoip/files/run-ptest          |   11 ++++++
 .../recipes-support/geoip/geoip_1.6.6.bb           |   38 ++++++++++++++++++++
 2 files changed, 49 insertions(+)
 create mode 100644 meta-networking/recipes-support/geoip/files/run-ptest

diff --git a/meta-networking/recipes-support/geoip/files/run-ptest 
b/meta-networking/recipes-support/geoip/files/run-ptest
new file mode 100644
index 0000000..14e9619
--- /dev/null
+++ b/meta-networking/recipes-support/geoip/files/run-ptest
@@ -0,0 +1,11 @@
+#!/bin/sh
+pdir=`dirname $0`
+cd ${pdir}/tests
+for i in ./benchmark ./test-geoip-city ; do
+       ${i} 1>/dev/null 2>&1;
+       if [ $? == 0 ]; then
+               echo PASS: $i;
+       else
+               echo FAIL: $i;
+       fi;
+done
diff --git a/meta-networking/recipes-support/geoip/geoip_1.6.6.bb 
b/meta-networking/recipes-support/geoip/geoip_1.6.6.bb
index 5037ae3..0605154 100644
--- a/meta-networking/recipes-support/geoip/geoip_1.6.6.bb
+++ b/meta-networking/recipes-support/geoip/geoip_1.6.6.bb
@@ -13,6 +13,7 @@ SRC_URI = "git://github.com/maxmind/geoip-api-c.git \
            
http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz;apply=no;name=GeoIPv6-dat
 \
            
http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz;apply=no;name=GeoLiteCity-dat
 \
            
http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz;apply=no;name=GeoLiteCityv6-dat
 \
+           file://run-ptest \
 "
 SRCREV = "ed3f3e2b87fba05a8f2a5b9b1328e7d55be8bf30"
 
@@ -47,9 +48,46 @@ do_install() {
     install ${WORKDIR}/GeoIPv6.dat ${D}/${datadir}/GeoIP/
     install ${WORKDIR}/GeoLiteCity.dat ${D}/${datadir}/GeoIP/
     install ${WORKDIR}/GeoLiteCityv6.dat ${D}/${datadir}/GeoIP/
+    ln -s GeoLiteCity.dat ${D}${datadir}/GeoIP/GeoIPCity.dat
 }
 
 PACKAGES =+ "${PN}-database"
 FILES_${PN}-database = ""
 FILES_${PN}-database += "${datadir}/GeoIP/*"
 
+# We cannot do much looking up without databases.
+#
+RDEPENDS_${PN} += "${PN}-database"
+
+inherit ptest
+
+do_configure_ptest() {
+       sed -i -e "s/noinst_PROGRAMS = /test_PROGRAMS = /g" \
+           -e 's:SRCDIR=\\"$(top_srcdir)\\":SRCDIR=\\"$(testdir)\\":' \
+         ${S}/test/Makefile.am
+
+       if ! grep "^testdir = " ${S}/test/Makefile.am ; then
+         sed -e '/EXTRA_PROGRAMS = /itestdir = ${PTEST_PATH}/tests' \
+           -i ${S}/test/Makefile.am
+       fi
+
+       sed -i -e "s:/usr/local/share:/usr/share:g" \
+         ${S}/test/benchmark.c
+
+       sed -i -e 's:"../data/:"/usr/share/GeoIP/:g' \
+         ${S}/test/test-geoip-city.c \
+         ${S}/test/test-geoip-isp.c \
+         ${S}/test/test-geoip-asnum.c \
+         ${S}/test/test-geoip-netspeed.c \
+         ${S}/test/test-geoip-org.c \
+         ${S}/test/test-geoip-region.c
+}
+
+
+do_install_ptest() {
+       oe_runmake -C test DESTDIR=${D}  install-testPROGRAMS
+       install ${S}/test/*.txt ${D}${PTEST_PATH}/tests
+}
+
+
+
-- 
1.7.9.5

-- 
_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Reply via email to