Merge pull request #266681 from reckenrode/clang16-fixes-batch6

encfs,grass,mayavi,aggdraw,vorbis-tools: fix builds on staging-next

Changed files
+79 -49
pkgs
applications
development
python-modules
aggdraw
mayavi
tools
filesystems
encfs
top-level
+12 -6
pkgs/applications/audio/vorbis-tools/default.nix
···
-
{ lib, stdenv, fetchurl, libogg, libvorbis, libao, pkg-config, curl
+
{ lib, stdenv, fetchurl, fetchpatch, libogg, libvorbis, libao, pkg-config, curl, libiconv
, speex, flac
, autoreconfHook }:
···
sha256 = "1c7h4ivgfdyygz2hyh6nfibxlkz8kdk868a576qkkjgj5gn78xyv";
};
-
nativeBuildInputs = [ autoreconfHook pkg-config ];
-
buildInputs = [ libogg libvorbis libao curl speex flac ];
+
patches = lib.optionals stdenv.cc.isClang [
+
# Fixes a call to undeclared function `utf8_decode`.
+
# https://github.com/xiph/vorbis-tools/pull/33
+
(fetchpatch {
+
url = "https://github.com/xiph/vorbis-tools/commit/8a645f78b45ae7e370c0dc2a52d0f2612aa6110b.patch";
+
hash = "sha256-RkT9Xa0pRu/oO9E9qhDa17L0luWgYHI2yINIkPZanmI=";
+
})
+
];
-
env = lib.optionalAttrs stdenv.cc.isClang {
-
NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
-
};
+
nativeBuildInputs = [ autoreconfHook pkg-config ];
+
buildInputs = [ libogg libvorbis libao curl speex flac ]
+
++ lib.optionals stdenv.isDarwin [ libiconv ];
meta = with lib; {
description = "Extra tools for Ogg-Vorbis audio codec";
+21
pkgs/applications/gis/grass/clang-integer-conversion.patch
···
+
diff -ur a/db/drivers/mysql/db.c b/db/drivers/mysql/db.c
+
--- a/db/drivers/mysql/db.c 1969-12-31 19:00:01.000000000 -0500
+
+++ b/db/drivers/mysql/db.c 2023-11-09 23:26:25.329700495 -0500
+
@@ -52,9 +52,16 @@
+
+
db_get_login2("mysql", name, &user, &password, &host, &port);
+
+
+ const char* errstr;
+
+ unsigned int port_number = (unsigned int)strtonum(port, 0, 65536, &errstr);
+
+ if (errstr != NULL) {
+
+ db_d_append_error("%s", errstr);
+
+ return DB_FAILED;
+
+ }
+
+
+
connection = mysql_init(NULL);
+
res = mysql_real_connect(connection, host, user, password,
+
- connpar.dbname, port, NULL, 0);
+
+ connpar.dbname, port_number, NULL, 0);
+
+
if (res == NULL) {
+
db_d_append_error("%s\n%s", _("Connection failed."),
+5 -4
pkgs/applications/gis/grass/default.nix
···
strictDeps = true;
-
# On Darwin the installer tries to symlink the help files into a system
-
# directory
-
patches = [ ./no_symbolic_links.patch ];
+
patches = lib.optionals stdenv.isDarwin [
+
# Fix conversion of const char* to unsigned int.
+
./clang-integer-conversion.patch
+
];
# Correct mysql_config query
-
patchPhase = ''
+
postPatch = ''
substituteInPlace configure --replace "--libmysqld-libs" "--libs"
'';
-37
pkgs/applications/gis/grass/no_symbolic_links.patch
···
-
diff --git a/include/Make/Install.make b/include/Make/Install.make
-
index 0aba138..8ba74bc 100644
-
--- a/include/Make/Install.make
-
+++ b/include/Make/Install.make
-
@@ -116,11 +116,6 @@ real-install: | $(INST_DIR) $(UNIX_BIN)
-
-$(INSTALL) config.status $(INST_DIR)/config.status
-
-$(CHMOD) -R a+rX $(INST_DIR) 2>/dev/null
-
-
-ifneq ($(findstring darwin,$(ARCH)),)
-
- @# enable OSX Help Viewer
-
- @/bin/ln -sfh "$(INST_DIR)/docs/html" /Library/Documentation/Help/GRASS-$(GRASS_VERSION_MAJOR).$(GRASS_VERSION_MINOR)
-
-endif
-
-
-
$(INST_DIR) $(UNIX_BIN):
-
$(MAKE_DIR_CMD) $@
-
-
diff --git a/macosx/app/build_html_user_index.sh b/macosx/app/build_html_user_index.sh
-
index 04e63eb..c9d9c2c 100755
-
--- a/macosx/app/build_html_user_index.sh
-
+++ b/macosx/app/build_html_user_index.sh
-
@@ -140,7 +140,6 @@ else
-
# echo "<tr><td valign=\"top\"><a href=\"$HTMLDIRG/$i\">$BASENAME</a></td> <td>$SHORTDESC</td></tr>" >> $FULLINDEX
-
# make them local to user to simplify page links
-
echo "<tr><td valign=\"top\"><a href=\"global_$i\">$BASENAME</a></td> <td>$SHORTDESC</td></tr>" >> $FULLINDEX
-
- ln -sf "$HTMLDIRG/$i" global_$i
-
done
-
done
-
fi
-
@@ -183,8 +182,3 @@ echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
-
</html>" > $i.html
-
done
-
-
-# add Help Viewer links in user docs folder
-
-
-
-mkdir -p $HOME/Library/Documentation/Help/
-
-ln -sfh ../../GRASS/$GRASS_MMVER/Modules/docs/html $HOME/Library/Documentation/Help/GRASS-$GRASS_MMVER-addon
-
-ln -sfh $GISBASE/docs/html $HOME/Library/Documentation/Help/GRASS-$GRASS_MMVER
+9
pkgs/development/python-modules/aggdraw/default.nix
···
{ lib
, fetchFromGitHub
+
, fetchpatch
, buildPythonPackage
, packaging
, setuptools
···
rev = "v${version}";
hash = "sha256-2yajhuRyQ7BqghbSgPClW3inpw4TW2DhgQbomcRFx94=";
};
+
+
patches = [
+
# Removes `register` storage class specifier, which is not allowed in C++17.
+
(fetchpatch {
+
url = "https://github.com/pytroll/aggdraw/commit/157ed49803567e8c3eeb7dfeff4c116db35747f7.patch";
+
hash = "sha256-QSzpO90u5oSBWUzehRFbXgZ1ApEfLlfp11MUx6w11aI=";
+
})
+
];
nativeBuildInputs = [
packaging
+19
pkgs/development/python-modules/mayavi/default.nix
···
, buildPythonPackage
, envisage
, fetchPypi
+
, fetchpatch
, numpy
, packaging
, pyface
···
inherit pname version;
hash = "sha256-n0J+8spska542S02ibpr7KJMhGDicG2KHJuEKJrT/Z4=";
};
+
+
patches = [
+
# Adds compatibility with Python 3.11.
+
# https://github.com/enthought/mayavi/pull/1199
+
(fetchpatch {
+
name = "python311-compat.patch";
+
url = "https://github.com/enthought/mayavi/commit/50c0cbfcf97560be69c84b7c924635a558ebf92f.patch";
+
hash = "sha256-zZOT6on/f5cEjnDBrNGog/wPQh7rBkaFqrxkBYDUQu0=";
+
includes = [ "tvtk/src/*" ];
+
})
+
# Fixes an incompatible function pointer conversion error
+
# https://github.com/enthought/mayavi/pull/1266
+
(fetchpatch {
+
name = "incompatible-pointer-conversion.patch";
+
url = "https://github.com/enthought/mayavi/commit/887adc8fe2b076a368070f5b1d564745b03b1964.patch";
+
hash = "sha256-88H1NNotd4pO0Zw1oLrYk5WNuuVrmTU01HJgsTRfKlo=";
+
})
+
];
postPatch = ''
# building the docs fails with the usual Qt xcb error, so skip:
+10 -1
pkgs/tools/filesystems/encfs/default.nix
···
-
{ lib, stdenv, fetchFromGitHub
+
{ lib, stdenv, fetchFromGitHub, fetchpatch
, cmake, pkg-config, perl
, gettext, fuse, openssl, tinyxml2
}:
···
repo = "encfs";
owner = "vgough";
};
+
+
patches = lib.optionals stdenv.cc.isClang [
+
# Fixes a build failure when building with newer versions of clang.
+
# https://github.com/vgough/encfs/pull/650
+
(fetchpatch {
+
url = "https://github.com/vgough/encfs/commit/406b63bfe234864710d1d23329bf41d48001fbfa.patch";
+
hash = "sha256-VunC5ICRJBgCXqkr7ad7DPzweRJr1bdOpo1LKNCs4zY=";
+
})
+
];
buildInputs = [ gettext fuse openssl tinyxml2 ];
nativeBuildInputs = [ cmake pkg-config perl ];
+3 -1
pkgs/top-level/all-packages.nix
···
dcw-gmt = callPackage ../applications/gis/gmt/dcw.nix { };
-
grass = callPackage ../applications/gis/grass { };
+
grass = callPackage ../applications/gis/grass {
+
stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
+
};
openorienteering-mapper = libsForQt5.callPackage ../applications/gis/openorienteering-mapper { };