aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/misc/mkgmap
diff options
context:
space:
mode:
authorNikolay Korotkiy <sikmir@gmail.com>2019-08-27 14:30:06 +0300
committerNikolay Korotkiy <sikmir@gmail.com>2019-08-27 19:04:15 +0300
commit98a283af558a33013265a69a4471481070bc1a4b (patch)
treea254f788dfb7eb347777721e088100e4c7cc1e73 /pkgs/applications/misc/mkgmap
parent630e25ba5cd30adb9efb8b6a64a295af780e62b4 (diff)
mkgmap: init at 4289
Diffstat (limited to 'pkgs/applications/misc/mkgmap')
-rw-r--r--pkgs/applications/misc/mkgmap/build.xml.patch11
-rw-r--r--pkgs/applications/misc/mkgmap/default.nix57
2 files changed, 68 insertions, 0 deletions
diff --git a/pkgs/applications/misc/mkgmap/build.xml.patch b/pkgs/applications/misc/mkgmap/build.xml.patch
new file mode 100644
index 00000000000..6ec40786b24
--- /dev/null
+++ b/pkgs/applications/misc/mkgmap/build.xml.patch
@@ -0,0 +1,11 @@
+--- a/build.xml 2019-08-26 23:22:55.104829846 +0300
++++ b/build.xml 2019-08-27 00:11:07.366257594 +0300
+@@ -227,7 +227,7 @@
+ </target>
+
+ <!-- Compile the product itself (no tests). -->
+- <target name="compile" depends="prepare, resolve-compile"
++ <target name="compile" depends="prepare"
+ description="main compilation">
+
+ <javac srcdir="${src}" destdir="${build.classes}" encoding="utf-8" debug="true" includeantruntime="false">
diff --git a/pkgs/applications/misc/mkgmap/default.nix b/pkgs/applications/misc/mkgmap/default.nix
new file mode 100644
index 00000000000..debcea78f55
--- /dev/null
+++ b/pkgs/applications/misc/mkgmap/default.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchurl, fetchsvn, jdk, jre, ant, makeWrapper }:
+
+let
+ fastutil = fetchurl {
+ url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar";
+ sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c";
+ };
+ osmpbf = fetchurl {
+ url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar";
+ sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3";
+ };
+ protobuf = fetchurl {
+ url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar";
+ sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0";
+ };
+in
+
+stdenv.mkDerivation rec {
+ pname = "mkgmap";
+ version = "4289";
+
+ src = fetchsvn {
+ url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk";
+ rev = version;
+ sha256 = "1sm1pw71q7z0jrxm8bcgm6xjl2mcidyibcf0a3m8fv2andidxrb4";
+ };
+
+ # This patch removes from the build process
+ # the automatic download of dependencies (see configurePhase)
+ patches = [ ./build.xml.patch ];
+
+ nativeBuildInputs = [ jdk ant makeWrapper ];
+
+ configurePhase = ''
+ mkdir -p lib/compile
+ cp ${fastutil} ${osmpbf} ${protobuf} lib/compile/
+ '';
+
+ buildPhase = "ant";
+
+ installPhase = ''
+ cd dist
+ install -Dm644 mkgmap.jar $out/share/java/mkgmap/mkgmap.jar
+ install -Dm644 doc/mkgmap.1 $out/share/man/man1/mkgmap.1
+ cp -r lib/ $out/share/java/mkgmap/
+ makeWrapper ${jre}/bin/java $out/bin/mkgmap \
+ --add-flags "-jar $out/share/java/mkgmap/mkgmap.jar"
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Create maps for Garmin GPS devices from OpenStreetMap (OSM) data";
+ homepage = "http://www.mkgmap.org.uk";
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ sikmir ];
+ platforms = platforms.all;
+ };
+}