From 470cd7c509ebd6885078208fbed76c5d19481b3d Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 29 Feb 2008 11:06:25 +0000 Subject: gpsdrive: add 2.10pre4 * http://bugs.openembedded.org/show_bug.cgi?id=3670 * plus some polishment --- packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty | 0 .../gpsdrive-2.10pre4-openstreetmap-download.patch | 128 +++++++++++++++++++++ .../gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch | 18 +++ .../gpsdrive-remove-hardcoded-paths.patch | 96 ++++++++++++++++ .../gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop | 10 ++ packages/gpsdrive/gpsdrive_2.10pre4.bb | 42 +++++++ 6 files changed, 294 insertions(+) create mode 100644 packages/gpsdrive/gpsdrive-2.10pre4/.mtn2git_empty create mode 100644 packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch create mode 100644 packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-ifdef-mapnik.patch create mode 100644 packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive-remove-hardcoded-paths.patch create mode 100644 packages/gpsdrive/gpsdrive-2.10pre4/gpsdrive_2.10pre4.desktop create mode 100644 packages/gpsdrive/gpsdrive_2.10pre4.bb (limited to 'packages/gpsdrive') 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 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 + modified (Dec 2005) by David Pollard + modified (Jul 2007) by Maciek Kaliszewski ++modified (Jan 2008) by Gernot Hillier (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 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" -- cgit 1.2.3-korg