summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Lee <john_lee@openmoko.org>2008-02-29 11:06:25 +0000
committerOpenmoko anonymizer key <devel@lists.openmoko.org>2008-02-29 11:06:25 +0000
commit470cd7c509ebd6885078208fbed76c5d19481b3d (patch)
treee7e42f176e9835e8cff1c167e315f91f33ab9721
parent2aa3d0842e9cde0ca04d41771b2c5c49e911ffe8 (diff)
gpsdrive: add 2.10pre4
* http://bugs.openembedded.org/show_bug.cgi?id=3670 * plus some polishment
-rw-r--r--packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty0
-rw-r--r--packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch128
-rw-r--r--packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch18
-rw-r--r--packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-remove-hardcoded-paths.patch96
-rw-r--r--packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop10
-rw-r--r--packages/gpsdrive/gpsdrive_2.10pre4.bb42
6 files changed, 294 insertions, 0 deletions
diff --git a/packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty b/packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty
diff --git a/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch
new file mode 100644
index 0000000000..878cb1dba9
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch
@@ -0,0 +1,128 @@
+diff -ur gpsdrive-2.10pre4.orig/scripts/gpsfetchmap.pl gpsdrive-2.10pre4/scripts/gpsfetchmap.pl
+--- gpsdrive-2.10pre4.orig/scripts/gpsfetchmap.pl 2007-12-28 18:49:44.000000000 +0100
++++ gpsdrive-2.10pre4/scripts/gpsfetchmap.pl 2008-01-04 19:01:35.000000000 +0100
+@@ -35,6 +35,7 @@
+ modified (Jul 2005) by Jaroslaw Zachwieja <grok\@filippa.org.uk>
+ modified (Dec 2005) by David Pollard <david dot pollard\@optusnet.com.au>
+ modified (Jul 2007) by Maciek Kaliszewski <mkalkal\@interia.pl>
++modified (Jan 2008) by Gernot Hillier <gernot\@hillier.de> (added Openstreetmap support)
+ Version svn-$Version
+ ";
+
+@@ -176,6 +177,25 @@
+ 15812 => 3 ,
+ 7906 => 2,
+ 3953 => 1
++ },
++ openstreetmap_tah => {
++ 256*576000 => 1,
++ 128*576000 => 2,
++ 64*576000 => 3,
++ 32*576000 => 4,
++ 16*576000 => 5,
++ 8*576000 => 6,
++ 4*576000 => 7,
++ 2*576000 => 8,
++ 576000 => 9,
++ 288000 => 10,
++ 144000 => 11,
++ 72000 => 12,
++ 36000 => 13,
++ 18000 => 14,
++ 9000 => 15,
++ 4500 => 16,
++ 2250 => 17
+ }
+ };
+
+@@ -331,7 +351,6 @@
+ exit();
+ }
+
+-
+ # Verify that we have the options that we need
+ pod2usage(1) if (&error_check);
+
+@@ -417,6 +436,13 @@
+ print "+-----------------------------------------------------------+\n";
+ print "| Landsat Maps are Copyright, ..... |\n";
+ print "| They are free for non commercial use. |\n";
++}elsif ( $mapserver eq 'openstreetmap_tah' ){
++ print "+-----------------------------------------------------------+\n";
++ print "| OpenStreetmap Maps are Copyright by the OpenStreetmap |\n";
++ print "| project. |\n";
++ print "| They are free for use under the terms of the |\n";
++ print "| Creative Commons \"Attribution-Share Alike 2.0 Generic\" |\n";
++ print "| license. See http://www.openstreetmap.org for details. |\n";
+ } elsif ( ! $force) {
+ print "You are violating the map servers copyright!\n";
+ print "Are you sure you want to continue? [y|n] ";
+@@ -700,6 +726,11 @@
+ {
+ ($url,$mapscale)=googlemap_url($lati,$long,$scale);
+ }
++ elsif ( $mapserver eq 'openstreetmap_tah')
++ {
++ $filename=~s/\.gif/.png/;
++ ($url,$mapscale)=openstreetmap_tah_url($lati,$long,$scale);
++ }
+ else
+ {
+ print "Unknown map sever :", $mapserver, "\n";
+@@ -935,6 +966,37 @@
+ return ($url,$mapscale);
+ }
+
++#############################################################################
++sub openstreetmap_tah_url($$$){
++ my $lati = shift;
++ my $long = shift;
++ my $scale = shift;
++
++ my $mapscale = $scale;
++ my $zoom = undef;
++ for my $s ( sort keys %{$Scale2Zoom->{openstreetmap_tah}} ) {
++ next unless $s == $scale;
++ $zoom = $Scale2Zoom->{openstreetmap_tah}->{$s};
++ $mapscale = $s;
++ last;
++ }
++
++ unless ( $zoom ) {
++ print "Error calculating Zoomlevel for Scale: $scale\n";
++ return (undef,undef);
++ }
++
++ if ($debug) {
++ print "\n";
++ print "Using openstreetmap_tah zoom ", $zoom, " for requested scale ", $scale, ":1 actual scale ", $mapscale, ":1\n";
++ print "lat: $lati\n";
++ print "lon: $long\n";
++ }
++
++ my $url = "http://tah.openstreetmap.org/MapOf/?lat=$lati&long=$long&z=$zoom&w=1280&h=1024&format=png";
++# print "$url\n";
++ return ($url,$mapscale);
++}
+
+ #############################################################################
+ sub eniro_url($$$){
+@@ -2284,7 +2346,7 @@
+ =item B<--mapserver <MAPSERVER>>
+
+ Mapserver to download from. Default: 'expedia'.
+-Currently can use: landsat or expedia.
++Currently usable: landsat, expedia or openstreetmap_tah.
+
+ geoscience, gov_au, incrementp, googlesat, googlemap and eniro have download stubs,
+ but they are !!!NOT!!!! in the right scale.
+@@ -2294,6 +2356,9 @@
+
+ landsat covers the whole world with satelite Photos
+
++openstreetmap_tah: Free maps from the OpenStreetmap Tiles@Home project, see
++ http://www.openstreetmap.org and http://tah.openstreetmap.org.
++
+ gov_au is for Australia
+
+ incrementp for japanese Maps
diff --git a/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch
new file mode 100644
index 0000000000..c51c80931c
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch
@@ -0,0 +1,18 @@
+Index: src/map_handler.c
+===================================================================
+--- aa/src/map_handler.c (Revision 1699)
++++ aa/src/map_handler.c (Revision 1700)
+@@ -660,9 +660,12 @@
+ if (maploaded)
+ gdk_pixbuf_unref (image);
+
++#ifdef MAPNIK
+ if ( !strcmp (filename,"mapnik") ) {
+ limage = gdk_pixbuf_new_from_data(get_mapnik_imagedata(), GDK_COLORSPACE_RGB, FALSE, 8, 1280, 1024, 1280 * 3, NULL, NULL);
+- } else {
++ } else
++#endif
++ {
+ limage = gdk_pixbuf_new_from_file (filename, NULL);
+ if (limage == NULL)
+ {
diff --git a/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-remove-hardcoded-paths.patch b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-remove-hardcoded-paths.patch
new file mode 100644
index 0000000000..c8c0fe9c6a
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-remove-hardcoded-paths.patch
@@ -0,0 +1,96 @@
+diff -ur gpsdrive-2.10pre4.orig/src/Makefile.am gpsdrive-2.10pre4/src/Makefile.am
+--- gpsdrive-2.10pre4.orig/src/Makefile.am 2007-12-28 18:49:44.000000000 +0100
++++ gpsdrive-2.10pre4/src/Makefile.am 2007-12-28 18:50:29.000000000 +0100
+@@ -14,14 +14,14 @@
+ -DLOCALEDIR=\"${localedir}\" -DDATADIR=\"${datadir}\" \
+ -DLIBDIR=\"${libdir}\" \
+ -DFRIENDSSERVERVERSION=\"${FRIENDSSERVERVERSION}\" \
+- ${NOGARMIN} ${NOPLUGINS} ${AMAPNIK}\
+- -I/usr/include/ \
+- -I/usr/local/include \
+- -I/opt/boost_1_35/include/boost-1_35 \
+- -I/usr/local/include/freetype2 \
+- -I/usr/include/freetype2 \
++ ${NOGARMIN} ${NOPLUGINS} ${AMAPNIK}
++# -I/usr/include/ \
++# -I/usr/local/include \
++# -I/opt/boost_1_35/include/boost-1_35 \
++# -I/usr/local/include/freetype2 \
++# -I/usr/include/freetype2 \
+ -I. \
+- -L/usr/local/lib
++# -L/usr/local/lib
+
+ # -I/usr/include/dbus-1.0/
+
+diff -ur gpsdrive-2.10pre4.orig/configure gpsdrive-2.10pre4/configure
+--- gpsdrive-2.10pre4.orig/configure 2007-12-28 18:49:44.000000000 +0100
++++ gpsdrive-2.10pre4/configure 2008-01-06 14:49:11.000000000 +0100
+@@ -35950,10 +35950,13 @@
+ # Yep, its ebil, but I does not know better...
+ #PERL_PACKAGE_DIR=`perl -V:installsitearch | sed "s/installsitearch='//" | sed "s/';//"`
+ # default on debian should be: /usr/share/perl5/
+-PERL_VENDORLIB=`perl -V:vendorlib | sed "s,vendorlib=',," | sed "s/';//"`
++#PERL_VENDORLIB=`perl -V:vendorlib | sed "s,vendorlib=',," | sed "s/';//"`
+ #PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr,-${prefix}-,"`
+-PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr/share,${datadir},"`
++#PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr/share,${datadir},"`
+
++# hard code path for OpenEmbedded environment as I don't know a way
++# to detect it automatically
++PERL_PACKAGE_DIR="/usr/share/perl5"
+
+ ac_perl_modules="File::Basename "
+ # Make sure we have perl
+@@ -37840,11 +37843,11 @@
+ # AC_SUBST(DLSYM_CFLAGS,'-Ddlsym=dlsym_prepend_underscore')
+ #fi
+
+-if test -f /usr/include/mysql/mysql.h; then
+- CFLAGS="$CFLAGS -I/usr/include/mysql"
+-else
+- CFLAGS="$CFLAGS -Imysql"
+-fi
++#if test -f /usr/include/mysql/mysql.h; then
++# CFLAGS="$CFLAGS -I/usr/include/mysql"
++#else
++# CFLAGS="$CFLAGS -Imysql"
++#fi
+
+ CFLAGS="$CFLAGS $OPT_CFLAGS"
+ CXXFLAGS="$CXXFLAGS $OPT_CFLAGS"
+diff -ur gpsdrive-2.10pre4.orig/configure.ac gpsdrive-2.10pre4/configure.ac
+--- gpsdrive-2.10pre4.orig/configure.ac 2007-12-28 18:49:44.000000000 +0100
++++ gpsdrive-2.10pre4/configure.ac 2008-01-06 14:48:50.000000000 +0100
+@@ -662,9 +662,12 @@
+ # Yep, its ebil, but I does not know better...
+ #PERL_PACKAGE_DIR=`perl -V:installsitearch | sed "s/installsitearch='//" | sed "s/';//"`
+ # default on debian should be: /usr/share/perl5/
+-PERL_VENDORLIB=`perl -V:vendorlib | sed "s,vendorlib=',," | sed "s/';//"`
++#PERL_VENDORLIB=`perl -V:vendorlib | sed "s,vendorlib=',," | sed "s/';//"`
+ #PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr,-${prefix}-,"`
+-PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr/share,${datadir},"`
++#PERL_PACKAGE_DIR=`echo ${PERL_VENDORLIB} | sed "s,/usr/share,${datadir},"`
++# hard code path for OpenEmbedded environment as I don't know a way
++# to detect it automatically
++PERL_PACKAGE_DIR="/usr/share/perl5"
+ AC_SUBST(PERL_PACKAGE_DIR)
+
+ AC_PROG_PERL_MODULES(File::Basename , , AC_MSG_ERROR(Need Perl module File::Basename))
+@@ -719,11 +722,11 @@
+ # AC_SUBST(DLSYM_CFLAGS,'-Ddlsym=dlsym_prepend_underscore')
+ #fi
+
+-if test -f /usr/include/mysql/mysql.h; then
+- CFLAGS="$CFLAGS -I/usr/include/mysql"
+-else
+- CFLAGS="$CFLAGS -Imysql"
+-fi
++#if test -f /usr/include/mysql/mysql.h; then
++# CFLAGS="$CFLAGS -I/usr/include/mysql"
++#else
++# CFLAGS="$CFLAGS -Imysql"
++#fi
+
+ CFLAGS="$CFLAGS $OPT_CFLAGS"
+ CXXFLAGS="$CXXFLAGS $OPT_CFLAGS"
diff --git a/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop
new file mode 100644
index 0000000000..96e8155861
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=GPSDrive
+Comment=GPS map software
+Exec=gpsdrive -M pda -1
+Icon=gpsicon
+Terminal=false
+Type=Application
+Categories=Graphics;Network;Geography;Application;Other
+StartupNotify=true
diff --git a/packages/gpsdrive/gpsdrive_2.10pre4.bb b/packages/gpsdrive/gpsdrive_2.10pre4.bb
new file mode 100644
index 0000000000..071a5691e3
--- /dev/null
+++ b/packages/gpsdrive/gpsdrive_2.10pre4.bb
@@ -0,0 +1,42 @@
+DESCRIPTION = "GPS navigation/map display software"
+SECTION = "x11"
+PRIORITY = "optional"
+LICENSE = "GPL"
+DEPENDS = "virtual/libc gtk+ libpcre gpsd libwww-perl-native mysql"
+RDEPENDS_${PN} = "gdk-pixbuf-loader-gif gpsd libwww-perl"
+PR = "r1"
+
+SRC_URI = "http://www.gpsdrive.de/packages/${PN}-${PV}.tar.gz \
+ file://gpsdrive_2.10pre4.desktop \
+ file://gpsdrive-remove-hardcoded-paths.patch;patch=1 \
+ file://gpsdrive-ifdef-mapnik.patch;patch=1 \
+ file://gpsdrive-2.10pre4-openstreetmap-download.patch;patch=1"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--disable-garmin"
+
+do_install_append () {
+ mkdir -p ${D}${datadir}/applications
+ install -m 0644 ${WORKDIR}/gpsdrive_2.10pre4.desktop ${D}${datadir}/applications/gpsdrive.desktop
+ mkdir -p ${D}${datadir}/pixmaps
+ cp ${D}${datadir}/${PN}/pixmaps/gpsicon.png ${D}${datadir}/pixmaps
+ # remove stuff we don't want to package
+ rm ${D}${datadir}/${PN}/gpsdrive.desktop # we have our own one
+ rm -rf ${D}${datadir}/${PN}/DSL # for Damn Small Linux
+ rm -rf ${D}${datadir}/${PN}/gentoo # for Gentoo
+}
+
+PACKAGES += "gpsdrive-maps gpsdrive-map-icons-classic gpsdrive-map-icons-other gpsdrive-addons"
+
+FILES_${PN} = "${bindir}/gpsdrive ${datadir}/applications ${datadir}/map-icons/icons.xml"
+FILES_${PN} += "${datadir}/pixmaps ${datadir}/${PN}/pixmaps ${datadir}/${PN}/poi"
+FILES_${PN}-addons = "${bindir}/*.pl ${bindir}/friendsd2 ${bindir}/geo* ${bindir}/*.sh ${bindir}/*.py ${bindir}/gpsreplay ${bindir}/gpssmswatch ${bindir}/wp* ${datadir}/mapnik ${datadir}/perl*/Geo ${datadir}/perl*/Utils"
+FILES_${PN}-map-icons-classic = "${datadir}/map-icons/classic.small"
+FILES_${PN}-map-icons-other = "${datadir}/map-icons/classic.big ${datadir}/map-icons/japan ${datadir}/map-icons/nickw ${datadir}/map-icons/square.big ${datadir}/map-icons/square.small ${datadir}/map-icons/svg"
+FILES_${PN}-maps = "${datadir}/${PN}/maps ${datadir}/${PN}/map_koord.txt"
+FILES_${PN}-doc = "${datadir}/man ${datadir}/${PN}/Documentation"
+
+CFLAGS += "-D_GNU_SOURCE"
+
+DEFAULT_PREFERENCE = "1"