Skip to content

Commit

Permalink
gmt: 6.4.0 -> 6.5.0 (NixOS#340707)
Browse files Browse the repository at this point in the history
  • Loading branch information
doronbehar authored Sep 30, 2024
2 parents d31bb1e + ebc36a9 commit 991c0e8
Show file tree
Hide file tree
Showing 2 changed files with 89 additions and 52 deletions.
139 changes: 89 additions & 50 deletions pkgs/applications/gis/gmt/default.nix
Original file line number Diff line number Diff line change
@@ -1,59 +1,98 @@
{ lib, stdenv, fetchurl, cmake, curl, Accelerate, CoreGraphics, CoreVideo
, fftwSinglePrec, netcdf, pcre, gdal, blas, lapack, glibc, ghostscript, dcw-gmt
, gshhg-gmt }:
{
lib,
stdenv,
fetchFromGitHub,
cmake,
curl,
Accelerate,
CoreGraphics,
CoreVideo,
fftwSinglePrec,
netcdf,
libxml2,
pcre,
gdal,
blas,
lapack,
glibc,
ghostscript,
dcw-gmt,
gshhg-gmt,
}:

/* The onus is on the user to also install:
- ffmpeg for webm or mp4 output
- graphicsmagick for gif output
/*
The onus is on the user to also install:
- ffmpeg for webm or mp4 output
- graphicsmagick for gif output
*/

stdenv.mkDerivation rec {
let
# Certainly not an ideal situation, See:
# https://github.com/NixOS/nixpkgs/pull/340707#issuecomment-2361894717
netcdf' = netcdf.override {
libxml2 = libxml2.override {
enableHttp = true;
};
};
in stdenv.mkDerivation (finalAttrs: {
pname = "gmt";
version = "6.4.0";
src = fetchurl {
url = "https://github.com/GenericMappingTools/gmt/releases/download/${version}/gmt-${version}-src.tar.gz";
sha256 = "sha256-0mfAx9b7MMnqfgKe8n2tsm/9e5LLS0cD+aO6Do85Ohs=";
version = "6.5.0";
src = fetchFromGitHub {
owner = "GenericMappingTools";
repo = "gmt";
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-KKIYhljCtk9t9CuvTLsSGvUkUwazWTm9ymBB3wLwSoI=";
};

nativeBuildInputs = [ cmake ];
nativeBuildInputs = [
cmake
];

buildInputs = [ curl gdal netcdf pcre dcw-gmt gshhg-gmt ]
++ (if stdenv.hostPlatform.isDarwin then [
Accelerate
CoreGraphics
CoreVideo
] else [
glibc
fftwSinglePrec
blas
lapack
]);
buildInputs =
[
curl
gdal
netcdf'
pcre
dcw-gmt
gshhg-gmt
]
++ (
if stdenv.hostPlatform.isDarwin then
[
Accelerate
CoreGraphics
CoreVideo
]
else
[
glibc
fftwSinglePrec
blas
lapack
]
);

propagatedBuildInputs = [ ghostscript ];
propagatedBuildInputs = [
ghostscript
];

cmakeFlags = [
"-DGMT_DOCDIR=share/doc/gmt"
"-DGMT_MANDIR=share/man"
"-DGMT_LIBDIR=lib"
"-DCOPY_GSHHG:BOOL=FALSE"
"-DGSHHG_ROOT=${gshhg-gmt.out}/share/gshhg-gmt"
"-DCOPY_DCW:BOOL=FALSE"
"-DDCW_ROOT=${dcw-gmt.out}/share/dcw-gmt"
"-DGDAL_ROOT=${gdal.out}"
"-DNETCDF_ROOT=${netcdf.out}"
"-DPCRE_ROOT=${pcre.out}"
"-DGMT_INSTALL_TRADITIONAL_FOLDERNAMES:BOOL=FALSE"
"-DGMT_ENABLE_OPENMP:BOOL=TRUE"
"-DGMT_INSTALL_MODULE_LINKS:BOOL=FALSE"
"-DLICENSE_RESTRICTED=LGPL" # "GPL" and "no" also valid
] ++ (with stdenv;
lib.optionals (!isDarwin) [
"-DFFTW3_ROOT=${fftwSinglePrec.dev}"
"-DLAPACK_LIBRARY=${lapack}/lib/liblapack.so"
"-DBLAS_LIBRARY=${blas}/lib/libblas.so"
]);
cmakeFlags =
[
"-DGMT_DOCDIR=share/doc/gmt"
"-DGMT_MANDIR=share/man"
"-DGMT_LIBDIR=lib"
"-DCOPY_GSHHG:BOOL=FALSE"
"-DGSHHG_ROOT=${gshhg-gmt.out}/share/gshhg-gmt"
"-DCOPY_DCW:BOOL=FALSE"
"-DDCW_ROOT=${dcw-gmt.out}/share/dcw-gmt"
"-DGMT_INSTALL_TRADITIONAL_FOLDERNAMES:BOOL=FALSE"
"-DGMT_ENABLE_OPENMP:BOOL=TRUE"
"-DGMT_INSTALL_MODULE_LINKS:BOOL=FALSE"
"-DLICENSE_RESTRICTED=LGPL" # "GPL" and "no" also valid
];

meta = with lib; {
meta = {
homepage = "https://www.generic-mapping-tools.org";
description = "Tools for manipulating geographic and cartesian data sets";
longDescription = ''
Expand All @@ -65,9 +104,9 @@ stdenv.mkDerivation rec {
transformations and includes supporting data such as coastlines, rivers,
and political boundaries and optionally country polygons.
'';
platforms = [ "x86_64-linux" "x86_64-darwin" ];
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ tviti ];
platforms = lib.platforms.unix;
license = lib.licenses.lgpl3Plus;
maintainers = with lib.maintainers; [ tviti ];
};

}
})
2 changes: 0 additions & 2 deletions pkgs/development/python-modules/pygmt/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,6 @@ buildPythonPackage rec {
homepage = "https://github.com/GenericMappingTools/pygmt";
license = licenses.bsd3;
changelog = "https://github.com/GenericMappingTools/pygmt/releases/tag/v${version}";
# pygmt.exceptions.GMTCLibNotFoundError: Error loading the GMT shared library '/nix/store/r3xnnqgl89vrnq0kzxx0bmjwzks45mz8-gmt-6.1.1/lib/libgmt.dylib'
broken = stdenv.hostPlatform.isDarwin;
maintainers = with maintainers; [ sikmir ];
};
}

0 comments on commit 991c0e8

Please sign in to comment.