guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: add proj4.


From: Marius Bakke
Subject: Re: [PATCH] gnu: add proj4.
Date: Tue, 17 Jan 2017 14:42:45 +0100
User-agent: Notmuch/0.23.5 (https://notmuchmail.org) Emacs/25.1.1 (x86_64-unknown-linux-gnu)

Björn Höfling <address@hidden> writes:

> Hi list,
>
> this im my first patch to Guix, so please tell me what you think.

Hello Björn!

Welcome to the list! Pretty impressive for a first patch :-)

I've committed it with a few cosmetic improvements, described below.

> * gnu/packages/geo.scm (proj4): New variable.
> ---
>  gnu/packages/geo.scm | 58 
> ++++++++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 56 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
> index 86828e717..0e63fe8c7 100644
> --- a/gnu/packages/geo.scm
> +++ b/gnu/packages/geo.scm
> @@ -1,6 +1,7 @@
>  ;;; GNU Guix --- Functional package management for GNU
>  ;;; Copyright © 2016 Leo Famulari <address@hidden>
>  ;;; Copyright © 2016 Alex Griffin <address@hidden>
> +;;; Copyright © 2017 Björn Höfling <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -19,8 +20,9 @@
>  
>  (define-module (gnu packages geo)
>    #:use-module (guix build-system glib-or-gtk)
> +  #:use-module (guix build-system gnu)
>    #:use-module (guix download)
> -  #:use-module (guix licenses)
> +  #:use-module ((guix licenses) #:prefix license:)
>    #:use-module (guix packages)
>    #:use-module (guix utils)
>    #:use-module (gnu packages glib)
> @@ -92,4 +94,56 @@
>  the OpenStreetMap project.  It can provide directions for walking, bicycling,
>  and driving.")
>      (home-page "https://wiki.gnome.org/Apps/Maps";)
> -    (license gpl2+)))
> +    (license license:gpl2+)))

While trivial, this change should be mentioned in the commit log
according to the GNU ChangeLog style. This way, if it did break
anything, it would be found with "git log --grep gnome-maps" :-)

> +(define-public proj.4
> +  (package
> +    (name "proj.4")
> +    (version "4.9.3")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "http://download.osgeo.org/proj/proj-";
> +                                  version
> +                                  ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1xw5f427xk9p2nbsj04j6m5zyjlyd66sbvl2bkg8hd1kx8pm9139"))))
> +    (build-system gnu-build-system)
> +    (arguments `(#:phases

I moved the '`(#:phases..' down one line and indented again. Now the URL fits
nicely on a horizontally split 1920x1080 screen.

> +                 (modify-phases %standard-phases
> +                   (add-after
> +                       'unpack 'patch-test-shebangs
> +                     (lambda _
> +                       (substitute* '("nad/test27"
> +                                      "nad/test83"
> +                                      "nad/testvarious"
> +                                      "nad/testdatumfile"
> +                                      "nad/testflaky"
> +                                      "nad/testIGNF")
> +                         (("/bin/rm") (which "rm")))))
> +                   ;; Precision problems on i686 and other platforms. See:
> +                   ;; 
> https://web.archive.org/web/20151006134301/http://trac.osgeo.org/proj/ticket/255
> +                   ;; Disable failing test.
> +                   (add-after
> +                       'patch-test-shebangs 'ignore-failing-tests
> +                     (lambda _
> +                       (substitute* '("nad/Makefile.in")
> +                         (("\tPROJ_LIB.*" all) (string-append  "#" 
> all))))))))

'substitute*' has an undefined return value, so we add an explicit #t at
the end of such phases to make sure they succeed.

> +    (inputs
> +     `(("glib" ,glib)))
> +    (home-page "http://proj4.org/";)
> +    (synopsis "Cartographic Projections Library")
> +    (description
> +     "Proj.4 is a library for converting coordinates between cartographic 
> projections.
> +")
> +    (license (list license:expat
> +               ;; config.guess, config.sub
> +               license:gpl3+
> +               ;; libtool
> +               license:gpl2+

Autotools generated files do not need to be mentioned here AFAIA.

> +               ;; src/PJ_patterson.c
> +               license:asl2.0
> +               ;; src/geodesic.c/h
> +               license:x11
> +               ;; cmake/*
> +               license:boost1.0))))

I also added a license entry for the embedded EPSG database:

http://www.epsg.org/TermsOfUse

Pushed as 0e159a1a09970c72603d08a028d0bb531ab6ab61 !

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]