Subject: [bug#50812] [PATCH v2 1/5] gnu: Add proj 7.2.1.

From: Xinglu Chen <[email-masked]>
Date: Sun, 26 Sep 2021 22:34:35 +0200

On Sun, Sep 26 2021, Felix Gruber wrote:

> * gnu/packages/geo.scm (proj.7): New variable.
> ---
>  gnu/packages/geo.scm | 39 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 39 insertions(+)
>
> diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
> index 9d4a1a8955..c10b93d83f 100644
> --- a/gnu/packages/geo.scm
> +++ b/gnu/packages/geo.scm
> @@ -511,6 +511,45 @@ fully fledged Spatial SQL capabilities.")
>                     license:mpl1.1
>                     license:public-domain))))
>  
> +(define-public proj.7

Hyphens are typically used to denote a specific version of a package,
e.g., ghc-8.8.

> +  (package
> +    (name "proj")
> +    (version "7.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append "http://download.osgeo.org/proj/proj-"
> +                           version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "050apzdn0isxpsblys1shrl9ccli5vd32kgswlgx1imrbwpg915k"))))
> +    (build-system cmake-build-system)
> +    (arguments
> +     `(#:configure-flags '("-DUSE_EXTERNAL_GTEST=ON")))
> +    (inputs
> +     `(("curl" ,curl)
> +       ("libjpeg-turbo" ,libjpeg-turbo)
> +       ("libtiff" ,libtiff)
> +       ("sqlite" ,sqlite)))
> +    (native-inputs
> +     `(("googletest" ,googletest)
> +       ("pkg-config" ,pkg-config)))
> +    (home-page "https://proj.org/")
> +    (synopsis "Coordinate transformation software")
> +    (description
> +     "Proj is a generic coordinate transformation software that transforms
> +geospatial coordinates from one coordinate reference system (CRS) to another.

Nit: I would use @acronym{CRS, coordinate reference system}.

> +This includes cartographic projections as well as geodetic transformations.
> +PROJ includes command line applications for easy conversion of coordinates
> +from text files or directly from user input.  In addition, proj also exposes
> +an application programming interface that lets developers use the
> +functionality of proj in their own software.")

The description includes three different spellings of the name---
“Proj”, “PROJ”, and “proj”.  It would be good to keep things more consistent.