Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
@ 2020-05-03 22:29 q66
  2020-05-04  0:09 ` [PR PATCH] [Updated] " q66
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: q66 @ 2020-05-03 22:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 365 bytes --]

There is a new pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

[WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44


A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 81182 bytes --]

From dd7c67eac9f70a3bb3a034a83bb4f914d3ae2175 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/17] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index 060d736457d..3706284a32f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From fb73c73e0b44cb976be27b94b9957969497db90b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/17] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From 182b7890c97373bfb600fcf0f1ddaa93c47f0d01 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/17] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From 6344c80e0389531215d741572053d3628074a72e Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/17] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From f1b0c81fef91bac7b00a7164bbcefba0a4f8eb89 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/17] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From 94e13f44aef967088ce22f3949ac1de37c509595 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/17] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 54f741d41e28595715805de3e8f2409ee8d6df16 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/17] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 102765c7c24fd20a669bb19364dda01775837c58 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/17] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 5af4055fd10e1b9aee94f06f777698744a7739ea Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/17] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From 142c7bb8cc1bb5a8c4f04dbfd46aa552d50092cd Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/17] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From c53fc9429168d3d21d48919e5aa5a401d26ef447 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/17] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 3e6247a5dee..d65162339bc 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.1.0
-revision=25
+revision=26
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From 32dcdeff791d36c24e8a8ff657bf02093c6ecd26 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:12:41 +0200
Subject: [PATCH 12/17] rust: update to 1.43.0

---
 .../rust/patches/0001-Fix-LLVM-build.patch    |  24 ++---
 ...to-work-when-cross-compiling-on-musl.patch |  18 ++--
 ...ative-libraries-when-linking-static-.patch |  16 +--
 ...dlib-and-musl_root-from-musl-targets.patch | 100 +++++++++---------
 ...er-libgcc_eh-over-libunwind-on-musl.patch} |  35 +++---
 ...-zero-sized-aggregate-ABI-on-powerpc.patch |  62 -----------
 ...n-for-plugins-Don-t-assume-multilib.patch} |   6 +-
 ...es-are-unstable-Fix-test-when-rpath.patch} |   6 +-
 ...ore-broken-and-non-applicable-tests.patch} |   8 +-
 ...-stage2-tools-dynamically-to-libstd.patch} |  14 +--
 ...-debugger-scripts-to-usr-share-rust.patch} |  10 +-
 ...ically-link-libc-on-musl-by-default.patch} |   6 +-
 ...age-of-musl-libc-for-the-libc-crate.patch} |  12 +--
 ...d-result-of-highest-as-f64-.log-2.0.patch} |   6 +-
 ...-against-host-target-LLVM-in-cross-s.patch |  31 ++++++
 ...-ELFv2-ABI-on-all-powerpc64-targets.patch} |  39 ++++---
 ...-against-host-target-LLVM-in-cross-s.patch |  28 -----
 srcpkgs/rust/template                         |  16 +--
 18 files changed, 191 insertions(+), 246 deletions(-)
 rename srcpkgs/rust/patches/{0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch => 0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch} (67%)
 delete mode 100644 srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
 rename srcpkgs/rust/patches/{0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch => 0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch} (86%)
 rename srcpkgs/rust/patches/{0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch => 0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch} (84%)
 rename srcpkgs/rust/patches/{0009-Ignore-broken-and-non-applicable-tests.patch => 0008-Ignore-broken-and-non-applicable-tests.patch} (95%)
 rename srcpkgs/rust/patches/{0010-Link-stage2-tools-dynamically-to-libstd.patch => 0009-Link-stage2-tools-dynamically-to-libstd.patch} (71%)
 rename srcpkgs/rust/patches/{0011-Move-debugger-scripts-to-usr-share-rust.patch => 0010-Move-debugger-scripts-to-usr-share-rust.patch} (89%)
 rename srcpkgs/rust/patches/{0012-Dynamically-link-libc-on-musl-by-default.patch => 0011-Dynamically-link-libc-on-musl-by-default.patch} (87%)
 rename srcpkgs/rust/patches/{0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch => 0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch} (84%)
 rename srcpkgs/rust/patches/{0014-round-result-of-highest-as-f64-.log-2.0.patch => 0013-round-result-of-highest-as-f64-.log-2.0.patch} (87%)
 create mode 100644 srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
 rename srcpkgs/rust/patches/{0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch => 0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch} (65%)
 delete mode 100644 srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch

diff --git a/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch b/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
index ab0b2fb1bb8..0da829af1da 100644
--- a/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
+++ b/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
@@ -1,26 +1,26 @@
-From b10e30c5f8a71f0efd871d0e5114f44d04a879fe Mon Sep 17 00:00:00 2001
+From 4443eca0d6b3ba599832b2f73a5350fdd0c90d10 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Fri, 8 Sep 2017 00:04:29 -0500
-Subject: [PATCH 01/16] Fix LLVM build
+Subject: [PATCH 01/15] Fix LLVM build
 
 ---
  src/bootstrap/lib.rs | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
-index 080bef68..e9b7976d 100644
+index a476d25f..c7e63990 100644
 --- a/src/bootstrap/lib.rs
 +++ b/src/bootstrap/lib.rs
-@@ -752,7 +752,8 @@ impl Build {
-         // cc-rs because the build scripts will determine that for themselves.
-         let mut base = self.cc[&target].args().iter()
-                            .map(|s| s.to_string_lossy().into_owned())
--                           .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
-+                           .filter(|s| !s.starts_with("-O") && !s.starts_with("/O")
-+                                   && !s.starts_with("-static"))
-                            .collect::<Vec<String>>();
+@@ -768,7 +768,8 @@ impl Build {
+             .args()
+             .iter()
+             .map(|s| s.to_string_lossy().into_owned())
+-            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
++            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O")
++                    && !s.starts_with("-static"))
+             .collect::<Vec<String>>();
  
          // If we're compiling on macOS then we add a few unconditional flags
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
index b1a871cd69f..7687c35ce87 100644
--- a/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
+++ b/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
@@ -1,7 +1,7 @@
-From c4c6747beb14cc96e7ce9d88018cef42533155df Mon Sep 17 00:00:00 2001
+From a78859bb6690e0ad285d1892d7a40796a40ac287 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 2 Dec 2017 17:25:44 -0600
-Subject: [PATCH 02/16] Allow rustdoc to work when cross-compiling on musl
+Subject: [PATCH 02/15] Allow rustdoc to work when cross-compiling on musl
 
 musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH.
 ---
@@ -9,7 +9,7 @@ musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH.
  1 file changed, 2 insertions(+), 5 deletions(-)
 
 diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs
-index 6937fb92..ce787609 100644
+index 04345867..8156d5ec 100644
 --- a/src/bootstrap/bin/rustdoc.rs
 +++ b/src/bootstrap/bin/rustdoc.rs
 @@ -22,9 +22,6 @@ fn main() {
@@ -22,16 +22,16 @@ index 6937fb92..ce787609 100644
      //FIXME(misdreavus): once stdsimd uses cfg(doc) instead of cfg(dox), remove the `--cfg dox`
      //arguments here
      let mut cmd = Command::new(rustdoc);
-@@ -36,7 +33,7 @@ fn main() {
+@@ -35,7 +32,7 @@ fn main() {
+         .arg("dox")
          .arg("--sysroot")
          .arg(&sysroot)
-         .env(bootstrap::util::dylib_path_var(),
--             env::join_paths(&dylib_path).unwrap());
-+             PathBuf::from(libdir.clone()));
+-        .env(bootstrap::util::dylib_path_var(), env::join_paths(&dylib_path).unwrap());
++        .env(bootstrap::util::dylib_path_var(), PathBuf::from(libdir.clone()));
  
      // Force all crates compiled by this compiler to (a) be unstable and (b)
      // allow the `rustc_private` feature to link to other unstable crates
-@@ -87,7 +84,7 @@ fn main() {
+@@ -83,7 +80,7 @@ fn main() {
          eprintln!(
              "rustdoc command: {:?}={:?} {:?}",
              bootstrap::util::dylib_path_var(),
@@ -41,5 +41,5 @@ index 6937fb92..ce787609 100644
          );
          eprintln!("sysroot: {:?}", sysroot);
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch b/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
index 0da09ab5e57..fe69b763f3f 100644
--- a/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
+++ b/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
@@ -1,7 +1,7 @@
-From 33aff948106db1150cc7c1f457e74c4dbf95f74a Mon Sep 17 00:00:00 2001
+From baa7ce46f19e3584d70e47c8df28c084e76446da Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
-Date: Fri, 8 Sep 2017 00:05:18 -0500
-Subject: [PATCH 03/16] Require static native libraries when linking static
+Date: Sun, 3 May 2020 17:48:47 +0200
+Subject: [PATCH 03/15] Require static native libraries when linking static
  executables
 
 On ELF targets like Linux, gcc/ld will create a dynamically-linked
@@ -16,10 +16,10 @@ Fixes #54243
  1 file changed, 14 insertions(+), 4 deletions(-)
 
 diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs
-index a2b50ea8..3250ec4d 100644
+index 0dd2f029..f22b4277 100644
 --- a/src/librustc_codegen_ssa/back/link.rs
 +++ b/src/librustc_codegen_ssa/back/link.rs
-@@ -1610,9 +1610,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(
+@@ -1741,9 +1741,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(
      }
  }
  
@@ -30,8 +30,8 @@ index a2b50ea8..3250ec4d 100644
  //
  // 1. The upstream crate is an rlib. In this case we *must* link in the
  // native dependency because the rlib is just an archive.
-@@ -1659,7 +1657,19 @@ pub fn add_upstream_native_libraries(
-                 continue
+@@ -1792,7 +1790,19 @@ pub fn add_upstream_native_libraries(
+                 continue;
              }
              match lib.kind {
 -                NativeLibraryKind::NativeUnknown => cmd.link_dylib(name),
@@ -52,5 +52,5 @@ index a2b50ea8..3250ec4d 100644
                  NativeLibraryKind::NativeStaticNobundle => {
                      // Link "static-nobundle" native libs only if the crate they originate from
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch b/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
index e22b7e08487..06e42fdf1e3 100644
--- a/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
+++ b/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
@@ -1,24 +1,24 @@
-From 06b84a9e3d7514ac23953ad76242710444d2a0c1 Mon Sep 17 00:00:00 2001
+From 4654172e942b5b9250aff70101d54bc880060073 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:46:22 +0100
-Subject: [PATCH 04/16] Remove -nostdlib and musl_root from musl targets
+Date: Sun, 3 May 2020 17:53:33 +0200
+Subject: [PATCH 04/15] Remove -nostdlib and musl_root from musl targets
 
 ---
  config.toml.example                         |  3 ---
- src/bootstrap/cc_detect.rs                  | 27 +++-----------------
+ src/bootstrap/cc_detect.rs                  | 25 ++----------------
  src/bootstrap/compile.rs                    | 22 +---------------
  src/bootstrap/config.rs                     |  7 ------
  src/bootstrap/configure.py                  | 28 ---------------------
- src/bootstrap/lib.rs                        |  8 ------
- src/bootstrap/sanity.rs                     | 24 ------------------
+ src/bootstrap/lib.rs                        | 10 --------
+ src/bootstrap/sanity.rs                     | 22 ----------------
  src/librustc_target/spec/linux_musl_base.rs | 16 ------------
- 8 files changed, 4 insertions(+), 131 deletions(-)
+ 8 files changed, 3 insertions(+), 130 deletions(-)
 
 diff --git a/config.toml.example b/config.toml.example
-index 5152a6c9..1d411c5c 100644
+index ce21b634..f14a5660 100644
 --- a/config.toml.example
 +++ b/config.toml.example
-@@ -340,9 +340,6 @@
+@@ -352,9 +352,6 @@
  # nightly features
  #channel = "dev"
  
@@ -29,10 +29,10 @@ index 5152a6c9..1d411c5c 100644
  # platforms to ensure that the compiler is usable by default from the build
  # directory (as it links to a number of dynamic libraries). This may not be
 diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs
-index a4cb81d3..b4247e74 100644
+index a236edf9..54c3cc64 100644
 --- a/src/bootstrap/cc_detect.rs
 +++ b/src/bootstrap/cc_detect.rs
-@@ -86,7 +86,7 @@ pub fn find(build: &mut Build) {
+@@ -97,7 +97,7 @@ pub fn find(build: &mut Build) {
          if let Some(cc) = config.and_then(|c| c.cc.as_ref()) {
              cfg.compiler(cc);
          } else {
@@ -41,7 +41,7 @@ index a4cb81d3..b4247e74 100644
          }
  
          let compiler = cfg.get_compiler();
-@@ -109,7 +109,7 @@ pub fn find(build: &mut Build) {
+@@ -125,7 +125,7 @@ pub fn find(build: &mut Build) {
              cfg.compiler(cxx);
              true
          } else if build.hosts.contains(&target) || build.build == target {
@@ -50,17 +50,15 @@ index a4cb81d3..b4247e74 100644
              true
          } else {
              false
-@@ -136,8 +136,7 @@ pub fn find(build: &mut Build) {
- fn set_compiler(cfg: &mut cc::Build,
-                 compiler: Language,
-                 target: Interned<String>,
--                config: Option<&Target>,
--                build: &Build) {
-+                config: Option<&Target>) {
+@@ -154,7 +154,6 @@ fn set_compiler(
+     compiler: Language,
+     target: Interned<String>,
+     config: Option<&Target>,
+-    build: &Build,
+ ) {
      match &*target {
          // When compiling for android we may have the NDK configured in the
-         // config.toml in which case we look there. Otherwise the default
-@@ -177,26 +176,6 @@ fn set_compiler(cfg: &mut cc::Build,
+@@ -196,26 +195,6 @@ fn set_compiler(
              }
          }
  
@@ -88,10 +86,10 @@ index a4cb81d3..b4247e74 100644
      }
  }
 diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
-index 831053bc..3e49d459 100644
+index 65a00db3..01fd2cf3 100644
 --- a/src/bootstrap/compile.rs
 +++ b/src/bootstrap/compile.rs
-@@ -130,18 +130,7 @@ fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target:
+@@ -125,18 +125,7 @@ fn copy_third_party_objects(
          target_deps.push(target);
      };
  
@@ -111,7 +109,7 @@ index 831053bc..3e49d459 100644
          let srcdir = builder.wasi_root(target).unwrap().join("lib/wasm32-wasi");
          copy_and_stamp(&srcdir, "crt1.o");
      }
-@@ -227,15 +216,6 @@ pub fn std_cargo(builder: &Builder<'_>,
+@@ -213,15 +202,6 @@ pub fn std_cargo(builder: &Builder<'_>, target: Interned<String>, cargo: &mut Ca
              .arg("--manifest-path")
              .arg(builder.src.join("src/libtest/Cargo.toml"));
  
@@ -128,10 +126,10 @@ index 831053bc..3e49d459 100644
              if let Some(p) = builder.wasi_root(target) {
                  let root = format!("native={}/lib/wasm32-wasi", p.to_str().unwrap());
 diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
-index 5f2ef01b..c291d3a0 100644
+index 56164b74..8c46334a 100644
 --- a/src/bootstrap/config.rs
 +++ b/src/bootstrap/config.rs
-@@ -130,8 +130,6 @@ pub struct Config {
+@@ -134,8 +134,6 @@ pub struct Config {
      pub print_step_timings: bool,
      pub missing_tools: bool,
  
@@ -140,7 +138,7 @@ index 5f2ef01b..c291d3a0 100644
      pub prefix: Option<PathBuf>,
      pub sysconfdir: Option<PathBuf>,
      pub datadir: Option<PathBuf>,
-@@ -166,7 +164,6 @@ pub struct Target {
+@@ -171,7 +169,6 @@ pub struct Target {
      pub linker: Option<PathBuf>,
      pub ndk: Option<PathBuf>,
      pub crt_static: Option<bool>,
@@ -148,7 +146,7 @@ index 5f2ef01b..c291d3a0 100644
      pub wasi_root: Option<PathBuf>,
      pub qemu_rootfs: Option<PathBuf>,
      pub no_std: bool,
-@@ -306,7 +303,6 @@ struct Rust {
+@@ -322,7 +319,6 @@ struct Rust {
      parallel_compiler: Option<bool>,
      default_linker: Option<String>,
      channel: Option<String>,
@@ -156,15 +154,15 @@ index 5f2ef01b..c291d3a0 100644
      rpath: Option<bool>,
      verbose_tests: Option<bool>,
      optimize_tests: Option<bool>,
-@@ -340,7 +336,6 @@ struct TomlTarget {
+@@ -359,7 +355,6 @@ struct TomlTarget {
      llvm_filecheck: Option<String>,
      android_ndk: Option<String>,
      crt_static: Option<bool>,
 -    musl_root: Option<String>,
      wasi_root: Option<String>,
      qemu_rootfs: Option<String>,
- }
-@@ -559,7 +554,6 @@ impl Config {
+     no_std: Option<bool>,
+@@ -585,7 +580,6 @@ impl Config {
              set(&mut config.llvm_tools_enabled, rust.llvm_tools);
              config.rustc_parallel = rust.parallel_compiler.unwrap_or(false);
              config.rustc_default_linker = rust.default_linker.clone();
@@ -172,19 +170,19 @@ index 5f2ef01b..c291d3a0 100644
              config.save_toolstates = rust.save_toolstates.clone().map(PathBuf::from);
              set(&mut config.deny_warnings, flags.deny_warnings.or(rust.deny_warnings));
              set(&mut config.backtrace_on_ice, rust.backtrace_on_ice);
-@@ -595,7 +589,6 @@ impl Config {
+@@ -625,7 +619,6 @@ impl Config {
                  target.ranlib = cfg.ranlib.clone().map(PathBuf::from);
                  target.linker = cfg.linker.clone().map(PathBuf::from);
-                 target.crt_static = cfg.crt_static.clone();
+                 target.crt_static = cfg.crt_static;
 -                target.musl_root = cfg.musl_root.clone().map(PathBuf::from);
                  target.wasi_root = cfg.wasi_root.clone().map(PathBuf::from);
                  target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from);
  
 diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py
-index bb6041d7..73f3781c 100755
+index 2a46c563..025928b9 100755
 --- a/src/bootstrap/configure.py
 +++ b/src/bootstrap/configure.py
-@@ -109,34 +109,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk",
+@@ -110,34 +110,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk",
    "aarch64-linux-android NDK standalone path")
  v("x86_64-linux-android-ndk", "target.x86_64-linux-android.android-ndk",
    "x86_64-linux-android NDK standalone path")
@@ -220,29 +218,31 @@ index bb6041d7..73f3781c 100755
    "rootfs in qemu testing, you probably don't want to use this")
  v("qemu-aarch64-rootfs", "target.aarch64-unknown-linux-gnu.qemu-rootfs",
 diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
-index e9b7976d..c4203e83 100644
+index c7e63990..77bbb2cd 100644
 --- a/src/bootstrap/lib.rs
 +++ b/src/bootstrap/lib.rs
-@@ -827,14 +827,6 @@ impl Build {
+@@ -845,16 +845,6 @@ impl Build {
          }
      }
  
 -    /// Returns the "musl root" for this `target`, if defined
 -    fn musl_root(&self, target: Interned<String>) -> Option<&Path> {
--        self.config.target_config.get(&target)
+-        self.config
+-            .target_config
+-            .get(&target)
 -            .and_then(|t| t.musl_root.as_ref())
--            .or(self.config.musl_root.as_ref())
+-            .or_else(|| self.config.musl_root.as_ref())
 -            .map(|p| &**p)
 -    }
 -
      /// Returns the sysroot for the wasi target, if defined
      fn wasi_root(&self, target: Interned<String>) -> Option<&Path> {
-         self.config.target_config.get(&target)
+         self.config.target_config.get(&target).and_then(|t| t.wasi_root.as_ref()).map(|p| &**p)
 diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs
-index bffe748f..3b109548 100644
+index 530e74da..8ec9f046 100644
 --- a/src/bootstrap/sanity.rs
 +++ b/src/bootstrap/sanity.rs
-@@ -187,30 +187,6 @@ pub fn check(build: &mut Build) {
+@@ -201,28 +201,6 @@ pub fn check(build: &mut Build) {
              }
          }
  
@@ -251,22 +251,20 @@ index bffe748f..3b109548 100644
 -            // If this is a native target (host is also musl) and no musl-root is given,
 -            // fall back to the system toolchain in /usr before giving up
 -            if build.musl_root(*target).is_none() && build.config.build == *target {
--                let target = build.config.target_config.entry(target.clone())
--                    .or_default();
+-                let target = build.config.target_config.entry(target.clone()).or_default();
 -                target.musl_root = Some("/usr".into());
 -            }
 -            match build.musl_root(*target) {
 -                Some(root) => {
 -                    if fs::metadata(root.join("lib/libc.a")).is_err() {
--                        panic!("couldn't find libc.a in musl dir: {}",
--                               root.join("lib").display());
+-                        panic!("couldn't find libc.a in musl dir: {}", root.join("lib").display());
 -                    }
 -                }
--                None => {
--                    panic!("when targeting MUSL either the rust.musl-root \
+-                None => panic!(
+-                    "when targeting MUSL either the rust.musl-root \
 -                            option or the target.$TARGET.musl-root option must \
--                            be specified in config.toml")
--                }
+-                            be specified in config.toml"
+-                ),
 -            }
 -        }
 -
@@ -307,5 +305,5 @@ index e294e639..58ae91a9 100644
      base.crt_static_default = true;
      // These targets allow the user to choose between static and dynamic linking.
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
similarity index 67%
rename from srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch
rename to srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
index a738e8c4bc1..0f65179eb40 100644
--- a/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch
+++ b/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
@@ -1,25 +1,24 @@
-From 6c6ccb3928deffd97a75ef2d9417aae467cd7031 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:49:07 +0100
-Subject: [PATCH 05/16] Prefer libgcc_eh over libunwind for musl
+From a640bce17d908a0691d53f22e5257353f694d9b6 Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Sun, 3 May 2020 17:55:50 +0200
+Subject: [PATCH 05/15] Prefer libgcc_eh over libunwind on musl
 
-+ @q66 changes to smaeul's original patch for Void's musl setup
 ---
- src/libunwind/build.rs | 17 ++---------------
+ src/libunwind/build.rs | 16 ++--------------
  src/libunwind/lib.rs   |  2 +-
- 2 files changed, 3 insertions(+), 16 deletions(-)
+ 2 files changed, 3 insertions(+), 15 deletions(-)
 
 diff --git a/src/libunwind/build.rs b/src/libunwind/build.rs
-index b8db16f8..0c69b9d2 100644
+index a24808b3..a1250889 100644
 --- a/src/libunwind/build.rs
 +++ b/src/libunwind/build.rs
-@@ -5,15 +5,11 @@ fn main() {
+@@ -5,15 +5,12 @@ fn main() {
      let target = env::var("TARGET").expect("TARGET was not set");
  
-     if cfg!(feature = "llvm-libunwind") &&
--        ((target.contains("linux") && !target.contains("musl")) ||
--         target.contains("fuchsia")) {
-+        (target.contains("linux") || target.contains("fuchsia")) {
+     if cfg!(feature = "llvm-libunwind")
+-        && ((target.contains("linux") && !target.contains("musl")) || target.contains("fuchsia"))
++        && (target.contains("linux") || target.contains("fuchsia"))
+     {
          // Build the unwinding from libunwind C/C++ source code.
          llvm_libunwind::compile();
      } else if target.contains("linux") {
@@ -31,7 +30,7 @@ index b8db16f8..0c69b9d2 100644
              println!("cargo:rustc-link-lib=gcc_s");
          }
      } else if target.contains("freebsd") {
-@@ -105,15 +101,6 @@ mod llvm_libunwind {
+@@ -105,15 +102,6 @@ mod llvm_libunwind {
              cfg.file(root.join("src").join(src));
          }
  
@@ -48,18 +47,18 @@ index b8db16f8..0c69b9d2 100644
      }
  }
 diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs
-index 8d916447..6d653d41 100644
+index 18d41be7..17f73d69 100644
 --- a/src/libunwind/lib.rs
 +++ b/src/libunwind/lib.rs
-@@ -21,7 +21,7 @@ cfg_if::cfg_if! {
+@@ -19,7 +19,7 @@ cfg_if::cfg_if! {
  }
  
  #[cfg(target_env = "musl")]
 -#[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))]
 +#[link(name = "gcc_eh", cfg(target_feature = "crt-static"))]
  #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))]
- extern {}
+ extern "C" {}
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch b/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
deleted file mode 100644
index fded751ef39..00000000000
--- a/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From d54189d6441d59ba623b561438e3ce0664ab2101 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:55:07 +0100
-Subject: [PATCH 06/16] Fix zero-sized aggregate ABI on powerpc
-
-For targets that pass zero-sized aggregates indirectly (generally
-those that pass all aggregates indirectly), we must allocate a register
-for passing the address of the ZST. Clean up the existing cases and add
-powerpc, which requires this as well.
-
-While there are not currently musl targets for s390x or sparc64, they
-would have the same ABI as gnu targets, so remove the env == "gnu" check
-in the Linux case.
-
-Ideally, since it is a property of the C ABI, the `!rust_abi` case would
-be handled entirely in `adjust_c_abi`. However, that would require
-updating each implementation of `compute_abi_info` to handle ZSTs.
----
- src/librustc/ty/layout.rs | 20 +++++++++-----------
- 1 file changed, 9 insertions(+), 11 deletions(-)
-
-diff --git a/src/librustc/ty/layout.rs b/src/librustc/ty/layout.rs
-index c7278dc4..2e5ea499 100644
---- a/src/librustc/ty/layout.rs
-+++ b/src/librustc/ty/layout.rs
-@@ -2576,12 +2576,11 @@ where
-         };
- 
-         let target = &cx.tcx().sess.target.target;
--        let win_x64_gnu =
--            target.target_os == "windows" && target.arch == "x86_64" && target.target_env == "gnu";
--        let linux_s390x =
--            target.target_os == "linux" && target.arch == "s390x" && target.target_env == "gnu";
--        let linux_sparc64 =
--            target.target_os == "linux" && target.arch == "sparc64" && target.target_env == "gnu";
-+        let indirect_zst = match target.arch.as_ref() {
-+            "powerpc" | "s390x" | "sparc64" => true,
-+            "x86_64" => target.target_os == "windows" && target.target_env == "gnu",
-+            _ => false,
-+        };
-         let rust_abi = match sig.abi {
-             RustIntrinsic | PlatformIntrinsic | Rust | RustCall => true,
-             _ => false,
-@@ -2650,11 +2649,10 @@ where
-             let is_return = arg_idx.is_none();
-             let mut arg = mk_arg_type(ty, arg_idx);
-             if arg.layout.is_zst() {
--                // For some forsaken reason, x86_64-pc-windows-gnu
--                // doesn't ignore zero-sized struct arguments.
--                // The same is true for s390x-unknown-linux-gnu
--                // and sparc64-unknown-linux-gnu.
--                if is_return || rust_abi || (!win_x64_gnu && !linux_s390x && !linux_sparc64) {
-+                // FIXME: The C ABI case should be handled in adjust_for_cabi.
-+                // Zero-sized struct arguments cannot be ignored in the C ABI
-+                // if they are passed indirectly.
-+                if is_return || rust_abi || !indirect_zst {
-                     arg.mode = PassMode::Ignore;
-                 }
-             }
--- 
-2.25.0
-
diff --git a/srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
similarity index 86%
rename from srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch
rename to srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
index 05bfa3a75c3..c80fe155224 100644
--- a/srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch
+++ b/srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
@@ -1,7 +1,7 @@
-From 07274f2e91b0d91102dcb5397783295d7a27b8b2 Mon Sep 17 00:00:00 2001
+From e44838dabefa1a62578895b4465717f7be8a7a86 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 6 Oct 2018 04:01:48 +0000
-Subject: [PATCH 07/16] test/use-extern-for-plugins: Don't assume multilib
+Subject: [PATCH 06/15] test/use-extern-for-plugins: Don't assume multilib
 
 ---
  src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------
@@ -26,5 +26,5 @@ index 838b1a27..94fa9f6d 100644
  all:
  	$(RUSTC) foo.rs -C extra-filename=-host
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
similarity index 84%
rename from srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
rename to srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
index b4bc17df027..8a9986f6411 100644
--- a/srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
+++ b/srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
@@ -1,7 +1,7 @@
-From d1ac85fbff21dc1d808308cc6f5a90b0cc562f2f Mon Sep 17 00:00:00 2001
+From cde014a1108b7d1cea85100cad48b12297267405 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Mon, 17 Sep 2018 01:32:20 +0000
-Subject: [PATCH 08/16] test/sysroot-crates-are-unstable: Fix test when rpath
+Subject: [PATCH 07/15] test/sysroot-crates-are-unstable: Fix test when rpath
  is disabled
 
 Without this environment var, the test can't run rustc to find
@@ -21,5 +21,5 @@ index a35174b3..9e770706 100644
 -	python2.7 test.py
 +	env '$(HOST_RPATH_ENV)' python2.7 test.py
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch b/srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
similarity index 95%
rename from srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch
rename to srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
index 187003cf38b..f9d64723903 100644
--- a/srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch
+++ b/srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
@@ -1,7 +1,7 @@
-From 6cbefd6ad105c833052919319db3564966572ceb Mon Sep 17 00:00:00 2001
+From c63745a2777648d530898bae5af9d25266472b05 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 21 Dec 2019 17:00:40 +0100
-Subject: [PATCH 09/16] Ignore broken and non-applicable tests
+Subject: [PATCH 08/15] Ignore broken and non-applicable tests
 
 c-link-to-rust-va-list-fn: unstable feature, broken on aarch64, #56475
 env-funky-keys: can't handle LD_PRELOAD (e.g. sandbox)
@@ -62,7 +62,7 @@ index 9e770706..6d92ec5c 100644
  
  all:
 diff --git a/src/test/ui/env-funky-keys.rs b/src/test/ui/env-funky-keys.rs
-index 4faceb53..09764dc3 100644
+index c5c824ac..f3fe047a 100644
 --- a/src/test/ui/env-funky-keys.rs
 +++ b/src/test/ui/env-funky-keys.rs
 @@ -1,6 +1,7 @@
@@ -87,5 +87,5 @@ index b28f742a..3ee4ccce 100644
  // Test that the simd_bitmask intrinsic produces correct results.
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch b/srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
similarity index 71%
rename from srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch
rename to srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
index b63e27ebb42..40f896bb980 100644
--- a/srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch
+++ b/srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
@@ -1,7 +1,7 @@
-From cdb82589b4be62c11186e4645a5fd358f5c55421 Mon Sep 17 00:00:00 2001
+From f5dad49f112151bb0ee74570e971bd475cbec128 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:01:59 +0100
-Subject: [PATCH 10/16] Link stage2 tools dynamically to libstd
+Date: Sun, 3 May 2020 18:00:09 +0200
+Subject: [PATCH 09/15] Link stage2 tools dynamically to libstd
 
 Replaces an older patch by Samuel Holland. The RUSTC_NO_PREFER_DYNAMIC
 env var was removed and replaced with the following logic in builder.rs.
@@ -14,10 +14,10 @@ be statically linked for convenience.
  1 file changed, 2 insertions(+)
 
 diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 8b0ad169..4bc13ac2 100644
+index eb0199fd..0ec7cbd8 100644
 --- a/src/bootstrap/builder.rs
 +++ b/src/bootstrap/builder.rs
-@@ -1228,6 +1228,8 @@ impl<'a> Builder<'a> {
+@@ -1236,6 +1236,8 @@ impl<'a> Builder<'a> {
          // linking all deps statically into the dylib.
          if let Mode::Std | Mode::Rustc | Mode::Codegen = mode {
              rustflags.arg("-Cprefer-dynamic");
@@ -25,7 +25,7 @@ index 8b0ad169..4bc13ac2 100644
 +            rustflags.arg("-Cprefer-dynamic");
          }
  
-         Cargo {
+         // When building incrementally we default to a lower ThinLTO import limit
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch b/srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
similarity index 89%
rename from srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch
rename to srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
index 51ac2cdf4d7..a48c6ff1c4a 100644
--- a/srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch
+++ b/srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
@@ -1,7 +1,7 @@
-From be61ad716d24f7fb0ee52b234cbf922d09bc686a Mon Sep 17 00:00:00 2001
+From 9b0c14783127e195d7bd54ca2c0c498a46714964 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Mon, 17 Sep 2018 02:09:10 +0000
-Subject: [PATCH 11/16] Move debugger scripts to /usr/share/rust
+Subject: [PATCH 10/15] Move debugger scripts to /usr/share/rust
 
 ---
  src/bootstrap/dist.rs | 2 +-
@@ -10,10 +10,10 @@ Subject: [PATCH 11/16] Move debugger scripts to /usr/share/rust
  3 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
-index 02533944..375f2413 100644
+index 8215211e..05a173b4 100644
 --- a/src/bootstrap/dist.rs
 +++ b/src/bootstrap/dist.rs
-@@ -593,7 +593,7 @@ impl Step for DebuggerScripts {
+@@ -603,7 +603,7 @@ impl Step for DebuggerScripts {
      fn run(self, builder: &Builder<'_>) {
          let host = self.host;
          let sysroot = self.sysroot;
@@ -49,5 +49,5 @@ index 7b9b40e6..e471db36 100755
  category_enable="type category enable Rust"
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch b/srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
similarity index 87%
rename from srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch
rename to srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
index 370e0709ebe..0492242be10 100644
--- a/srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch
+++ b/srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
@@ -1,7 +1,7 @@
-From f277b9c07cd6d096fad370a76c6dfdfb03aa3d1e Mon Sep 17 00:00:00 2001
+From d72ad9c226b4ed225c23d88ec5dbe6ba321b37ad Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
 Date: Sat, 21 Dec 2019 17:04:13 +0100
-Subject: [PATCH 12/16] Dynamically link libc on musl by default
+Subject: [PATCH 11/15] Dynamically link libc on musl by default
 
 ---
  src/librustc_target/spec/linux_musl_base.rs | 3 +--
@@ -22,5 +22,5 @@ index 58ae91a9..1fae72d6 100644
      base.crt_static_respected = true;
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch b/srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
similarity index 84%
rename from srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
rename to srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
index b4cb7addfca..e0b567c419e 100644
--- a/srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
+++ b/srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
@@ -1,7 +1,7 @@
-From 191b56a4e8c307e531a446f8cceb4ecc732beace Mon Sep 17 00:00:00 2001
+From e363a0e0ff7ffc8bd83f72ec1a20d289996b6370 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:04:55 +0100
-Subject: [PATCH 13/16] Fix dynamic linkage of musl libc for the libc crate
+Date: Sun, 3 May 2020 18:02:03 +0200
+Subject: [PATCH 12/15] Fix dynamic linkage of musl libc for the libc crate
 
 ---
  vendor/libc/src/lib.rs      | 1 +
@@ -9,7 +9,7 @@ Subject: [PATCH 13/16] Fix dynamic linkage of musl libc for the libc crate
  2 files changed, 4 insertions(+), 3 deletions(-)
 
 diff --git a/vendor/libc/src/lib.rs b/vendor/libc/src/lib.rs
-index 3255303e..bfbd2d7a 100644
+index 0b1496af..7f7e85a7 100644
 --- a/vendor/libc/src/lib.rs
 +++ b/vendor/libc/src/lib.rs
 @@ -33,6 +33,7 @@
@@ -18,8 +18,8 @@ index 3255303e..bfbd2d7a 100644
  #![cfg_attr(feature = "rustc-dep-of-std", no_core)]
 +#![cfg_attr(feature = "rustc-dep-of-std", feature(static_nobundle))]
  #![cfg_attr(target_os = "redox", feature(static_nobundle))]
+ #![cfg_attr(libc_const_extern_fn, feature(const_extern_fn))]
  
- #[macro_use]
 diff --git a/vendor/libc/src/unix/mod.rs b/vendor/libc/src/unix/mod.rs
 index 238da24b..ffb05ee7 100644
 --- a/vendor/libc/src/unix/mod.rs
@@ -40,5 +40,5 @@ index 238da24b..ffb05ee7 100644
      } else if #[cfg(target_os = "emscripten")] {
          #[link(name = "c")]
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch b/srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
similarity index 87%
rename from srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch
rename to srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
index 2fab5da83b2..46fac863858 100644
--- a/srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch
+++ b/srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
@@ -1,7 +1,7 @@
-From a5843bb05ebd94b8acaa7a011c1db7abdc112e5c Mon Sep 17 00:00:00 2001
+From d74af8923022dd369315ada0a06e467dffd127cf Mon Sep 17 00:00:00 2001
 From: Michael Hudson-Doyle <michael.hudson@canonical.com>
 Date: Wed, 13 Mar 2019 15:55:30 +1300
-Subject: [PATCH 14/16] round result of (highest as f64).log(2.0)
+Subject: [PATCH 13/15] round result of (highest as f64).log(2.0)
 
 Even though (1024f64).log(2.0) has an exact, representable, value, with
 rustc 1.32 on i386 it comes out as +9.999999999999999985 with
@@ -25,5 +25,5 @@ index 9c9f237c..153031a2 100644
      let uints = (0..(highest + 1))
          .chain((first2..64).map(|i| 2u64.pow(i)))
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch b/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
new file mode 100644
index 00000000000..fb01e60fa5e
--- /dev/null
+++ b/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
@@ -0,0 +1,31 @@
+From 07efbc3bdd67de4e13b0f3f4df853a9de0800ec3 Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Sun, 3 May 2020 18:05:22 +0200
+Subject: [PATCH 14/15] Void: fix linkage against host/target LLVM in cross
+ setups
+
+---
+ src/librustc_llvm/build.rs | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
+index 9b4f03b3..d0167838 100644
+--- a/src/librustc_llvm/build.rs
++++ b/src/librustc_llvm/build.rs
+@@ -217,9 +217,11 @@ fn main() {
+     for lib in output(&mut cmd).split_whitespace() {
+         if is_crossed {
+             if lib.starts_with("-LIBPATH:") {
+-                println!("cargo:rustc-link-search=native={}", lib[9..].replace(&host, &target));
++                println!("cargo:rustc-link-search=native={}{}",
++                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[9..]);
+             } else if lib.starts_with("-L") {
+-                println!("cargo:rustc-link-search=native={}", lib[2..].replace(&host, &target));
++                println!("cargo:rustc-link-search=native={}{}",
++                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[2..]);
+             }
+         } else if lib.starts_with("-LIBPATH:") {
+             println!("cargo:rustc-link-search=native={}", &lib[9..]);
+-- 
+2.26.2
+
diff --git a/srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch b/srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
similarity index 65%
rename from srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
rename to srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
index 94bad4b8795..bb9269e43bb 100644
--- a/srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
+++ b/srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
@@ -1,36 +1,43 @@
-From 923d16b37c381d73ce0f88403256b26af3edf1bd Mon Sep 17 00:00:00 2001
+From c6b54a373e74a1e4ce64f349b5b69105f2bc1a49 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:06:55 +0100
-Subject: [PATCH 16/16] Use ELFv2 ABI on all powerpc64 targets
+Date: Sun, 3 May 2020 18:08:09 +0200
+Subject: [PATCH 15/15] Use ELFv2 ABI on all powerpc64 targets
 
 This patches librustc_target so that ELFv2 is used everywhere, matching our
 LLVM. While this is not perfect (it does not allow rustc to compile legacy
 binaries), rustc never requests specific ABI from llvm in the first place,
 so at least match the environment we have.
 ---
- src/librustc_target/abi/call/powerpc64.rs               | 2 +-
+ src/librustc_target/abi/call/powerpc64.rs               | 9 +--------
  src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs | 6 +-----
- 2 files changed, 2 insertions(+), 6 deletions(-)
+ 2 files changed, 2 insertions(+), 13 deletions(-)
 
 diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs
-index fe459480..997593b9 100644
+index 93c4e97d..96b02486 100644
 --- a/src/librustc_target/abi/call/powerpc64.rs
 +++ b/src/librustc_target/abi/call/powerpc64.rs
-@@ -117,7 +117,7 @@ pub fn compute_abi_info<'a, Ty, C>(cx: &C, fn_abi: &mut FnAbi<'a, Ty>)
-     where Ty: TyLayoutMethods<'a, C> + Copy,
-           C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec
+@@ -119,14 +119,7 @@ where
+     Ty: TyLayoutMethods<'a, C> + Copy,
+     C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec,
  {
 -    let abi = if cx.target_spec().target_env == "musl" {
-+    let abi = if cx.target_spec().target_env == "musl" || cx.target_spec().target_env == "gnu" {
-         ELFv2
-     } else {
-         match cx.data_layout().endian {
+-        ELFv2
+-    } else {
+-        match cx.data_layout().endian {
+-            Endian::Big => ELFv1,
+-            Endian::Little => ELFv2,
+-        }
+-    };
++    let abi = ELFv2;
+ 
+     if !fn_abi.ret.is_ignore() {
+         classify_ret(cx, &mut fn_abi.ret, abi);
 diff --git a/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs b/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
-index 89e68ab3..77659cdd 100644
+index 5306d905..c63eed85 100644
 --- a/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
 +++ b/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
 @@ -1,4 +1,4 @@
--use crate::spec::{LinkerFlavor, Target, TargetOptions, TargetResult, RelroLevel};
+-use crate::spec::{LinkerFlavor, RelroLevel, Target, TargetOptions, TargetResult};
 +use crate::spec::{LinkerFlavor, Target, TargetOptions, TargetResult};
  
  pub fn target() -> TargetResult {
@@ -47,5 +54,5 @@ index 89e68ab3..77659cdd 100644
          llvm_target: "powerpc64-unknown-linux-gnu".to_string(),
          target_endian: "big".to_string(),
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch b/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
deleted file mode 100644
index 1d10ac2f1f3..00000000000
--- a/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From e83770856411e2ff780551143fc6c26a8552741e Mon Sep 17 00:00:00 2001
-From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:06:17 +0100
-Subject: [PATCH 15/16] Void: fix linkage against host/target LLVM in cross
- setups
-
----
- src/librustc_llvm/build.rs | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
-index c5d5f066..91799142 100644
---- a/src/librustc_llvm/build.rs
-+++ b/src/librustc_llvm/build.rs
-@@ -225,8 +225,8 @@ fn main() {
-             println!("cargo:rustc-link-search=native={}", &lib[9..]);
-         } else if is_crossed {
-             if lib.starts_with("-L") {
--                println!("cargo:rustc-link-search=native={}",
--                         lib[2..].replace(&host, &target));
-+                println!("cargo:rustc-link-search=native={}{}",
-+                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[2..]);
-             }
-         } else if lib.starts_with("-l") {
-             println!("cargo:rustc-link-lib={}", &lib[2..]);
--- 
-2.25.0
-
diff --git a/srcpkgs/rust/template b/srcpkgs/rust/template
index e7421cf4e04..b0626ec60c2 100644
--- a/srcpkgs/rust/template
+++ b/srcpkgs/rust/template
@@ -4,10 +4,10 @@
 # Permission to use rust and cargo trademark is granted.
 # See: https://github.com/rust-lang/core-team/issues/4
 pkgname=rust
-version=1.41.1
-revision=2
-_rust_dist_version=1.40.0
-_cargo_dist_version=0.41.0
+version=1.43.0
+revision=1
+_rust_dist_version=1.43.0
+_cargo_dist_version=0.44.0
 # Always make sure custom distfiles used for bootstrap are
 # uploaded to https://alpha.de.repo.voidlinux.org/distfiles/
 wrksrc="rustc-${version}-src"
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://www.rust-lang.org/"
 distfiles="https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"
-checksum=38c93d016e6d3e083aa15e8f65511d3b4983072c0218a529f5ee94dd1de84573
+checksum=75f6ac6c9da9f897f4634d5a07be4084692f7ccc2d2bb89337be86cfc18453a1
 lib32disabled=yes
 patch_args="-Np1"
 
@@ -68,9 +68,9 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 aa07a07ad272de825da8c18ad8dc4143a25bd28e5538d68c3bced53f060432b4
-			 4eb3141fb6c3d3e101b5d4493664c9a01d4bb9eebdf4b96f5c26a81188c2452d
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 72eb572fa451b96369de807d3e92cf0320c5ce5099758a2c974e2ebcc4b23325
+			 098fe3991cd282b77629811fbaaec848ded3448252a8d5f788a406676ae58639
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="

From 10f48745d4e28809aca72b4fedbdb71469a39a09 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 13/17] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 37 ++-----
 3 files changed, 7 insertions(+), 158 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..24885cb713c 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
@@ -11,13 +11,9 @@ short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
 if [ "$CROSS_BUILD" ]; then
@@ -27,7 +23,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -50,7 +46,7 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
@@ -80,25 +76,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +93,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From 9656e4b2a928841d6a8c3fee3c54ca3c1a5b3ba4 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 14/17] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From 81378dbfc6e3875324ea9fc187fd5dca95f3f37d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 15/17] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 2dc5c74cb086ce61626ed7107be80a6402bbecf3 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 16/17] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From 533924ed658326694c556d549d56a987267c37ab Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 17/17] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
@ 2020-05-04  0:09 ` q66
  2020-05-04  0:30 ` q66
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  0:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 576 bytes --]

There is an updated pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

[WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
TODO:

- [ ] build rust/cargo bootstrap toolchains for `ppc*`
- [ ] update rust/cargo checksums for non-ppc64le architectures
- [ ] check/fix static cargo
- [x] test building julia
- [ ] build firefox

A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 84528 bytes --]

From dd7c67eac9f70a3bb3a034a83bb4f914d3ae2175 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/17] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index 060d736457d..3706284a32f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From fb73c73e0b44cb976be27b94b9957969497db90b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/17] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From 182b7890c97373bfb600fcf0f1ddaa93c47f0d01 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/17] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From 6344c80e0389531215d741572053d3628074a72e Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/17] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From f1b0c81fef91bac7b00a7164bbcefba0a4f8eb89 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/17] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From 94e13f44aef967088ce22f3949ac1de37c509595 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/17] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 54f741d41e28595715805de3e8f2409ee8d6df16 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/17] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 102765c7c24fd20a669bb19364dda01775837c58 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/17] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 5af4055fd10e1b9aee94f06f777698744a7739ea Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/17] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From 142c7bb8cc1bb5a8c4f04dbfd46aa552d50092cd Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/17] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From c53fc9429168d3d21d48919e5aa5a401d26ef447 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/17] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 3e6247a5dee..d65162339bc 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.1.0
-revision=25
+revision=26
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From b86d89326badda964ba14974565efdabb29a0310 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:12:41 +0200
Subject: [PATCH 12/17] rust: update to 1.43.0

---
 .../rust/patches/0001-Fix-LLVM-build.patch    |  24 ++---
 ...to-work-when-cross-compiling-on-musl.patch |  18 ++--
 ...ative-libraries-when-linking-static-.patch |  16 +--
 ...dlib-and-musl_root-from-musl-targets.patch | 100 +++++++++---------
 ...er-libgcc_eh-over-libunwind-on-musl.patch} |  35 +++---
 ...-zero-sized-aggregate-ABI-on-powerpc.patch |  62 -----------
 ...n-for-plugins-Don-t-assume-multilib.patch} |   6 +-
 ...es-are-unstable-Fix-test-when-rpath.patch} |   6 +-
 ...ore-broken-and-non-applicable-tests.patch} |   8 +-
 ...-stage2-tools-dynamically-to-libstd.patch} |  14 +--
 ...-debugger-scripts-to-usr-share-rust.patch} |  10 +-
 ...ically-link-libc-on-musl-by-default.patch} |   6 +-
 ...age-of-musl-libc-for-the-libc-crate.patch} |  12 +--
 ...d-result-of-highest-as-f64-.log-2.0.patch} |   6 +-
 ...-against-host-target-LLVM-in-cross-s.patch |  31 ++++++
 ...-ELFv2-ABI-on-all-powerpc64-targets.patch} |  39 ++++---
 ...-against-host-target-LLVM-in-cross-s.patch |  28 -----
 srcpkgs/rust/template                         |  46 ++++----
 18 files changed, 206 insertions(+), 261 deletions(-)
 rename srcpkgs/rust/patches/{0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch => 0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch} (67%)
 delete mode 100644 srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
 rename srcpkgs/rust/patches/{0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch => 0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch} (86%)
 rename srcpkgs/rust/patches/{0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch => 0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch} (84%)
 rename srcpkgs/rust/patches/{0009-Ignore-broken-and-non-applicable-tests.patch => 0008-Ignore-broken-and-non-applicable-tests.patch} (95%)
 rename srcpkgs/rust/patches/{0010-Link-stage2-tools-dynamically-to-libstd.patch => 0009-Link-stage2-tools-dynamically-to-libstd.patch} (71%)
 rename srcpkgs/rust/patches/{0011-Move-debugger-scripts-to-usr-share-rust.patch => 0010-Move-debugger-scripts-to-usr-share-rust.patch} (89%)
 rename srcpkgs/rust/patches/{0012-Dynamically-link-libc-on-musl-by-default.patch => 0011-Dynamically-link-libc-on-musl-by-default.patch} (87%)
 rename srcpkgs/rust/patches/{0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch => 0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch} (84%)
 rename srcpkgs/rust/patches/{0014-round-result-of-highest-as-f64-.log-2.0.patch => 0013-round-result-of-highest-as-f64-.log-2.0.patch} (87%)
 create mode 100644 srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
 rename srcpkgs/rust/patches/{0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch => 0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch} (65%)
 delete mode 100644 srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch

diff --git a/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch b/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
index ab0b2fb1bb8..0da829af1da 100644
--- a/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
+++ b/srcpkgs/rust/patches/0001-Fix-LLVM-build.patch
@@ -1,26 +1,26 @@
-From b10e30c5f8a71f0efd871d0e5114f44d04a879fe Mon Sep 17 00:00:00 2001
+From 4443eca0d6b3ba599832b2f73a5350fdd0c90d10 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Fri, 8 Sep 2017 00:04:29 -0500
-Subject: [PATCH 01/16] Fix LLVM build
+Subject: [PATCH 01/15] Fix LLVM build
 
 ---
  src/bootstrap/lib.rs | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
-index 080bef68..e9b7976d 100644
+index a476d25f..c7e63990 100644
 --- a/src/bootstrap/lib.rs
 +++ b/src/bootstrap/lib.rs
-@@ -752,7 +752,8 @@ impl Build {
-         // cc-rs because the build scripts will determine that for themselves.
-         let mut base = self.cc[&target].args().iter()
-                            .map(|s| s.to_string_lossy().into_owned())
--                           .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
-+                           .filter(|s| !s.starts_with("-O") && !s.starts_with("/O")
-+                                   && !s.starts_with("-static"))
-                            .collect::<Vec<String>>();
+@@ -768,7 +768,8 @@ impl Build {
+             .args()
+             .iter()
+             .map(|s| s.to_string_lossy().into_owned())
+-            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
++            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O")
++                    && !s.starts_with("-static"))
+             .collect::<Vec<String>>();
  
          // If we're compiling on macOS then we add a few unconditional flags
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
index b1a871cd69f..7687c35ce87 100644
--- a/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
+++ b/srcpkgs/rust/patches/0002-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
@@ -1,7 +1,7 @@
-From c4c6747beb14cc96e7ce9d88018cef42533155df Mon Sep 17 00:00:00 2001
+From a78859bb6690e0ad285d1892d7a40796a40ac287 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 2 Dec 2017 17:25:44 -0600
-Subject: [PATCH 02/16] Allow rustdoc to work when cross-compiling on musl
+Subject: [PATCH 02/15] Allow rustdoc to work when cross-compiling on musl
 
 musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH.
 ---
@@ -9,7 +9,7 @@ musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH.
  1 file changed, 2 insertions(+), 5 deletions(-)
 
 diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs
-index 6937fb92..ce787609 100644
+index 04345867..8156d5ec 100644
 --- a/src/bootstrap/bin/rustdoc.rs
 +++ b/src/bootstrap/bin/rustdoc.rs
 @@ -22,9 +22,6 @@ fn main() {
@@ -22,16 +22,16 @@ index 6937fb92..ce787609 100644
      //FIXME(misdreavus): once stdsimd uses cfg(doc) instead of cfg(dox), remove the `--cfg dox`
      //arguments here
      let mut cmd = Command::new(rustdoc);
-@@ -36,7 +33,7 @@ fn main() {
+@@ -35,7 +32,7 @@ fn main() {
+         .arg("dox")
          .arg("--sysroot")
          .arg(&sysroot)
-         .env(bootstrap::util::dylib_path_var(),
--             env::join_paths(&dylib_path).unwrap());
-+             PathBuf::from(libdir.clone()));
+-        .env(bootstrap::util::dylib_path_var(), env::join_paths(&dylib_path).unwrap());
++        .env(bootstrap::util::dylib_path_var(), PathBuf::from(libdir.clone()));
  
      // Force all crates compiled by this compiler to (a) be unstable and (b)
      // allow the `rustc_private` feature to link to other unstable crates
-@@ -87,7 +84,7 @@ fn main() {
+@@ -83,7 +80,7 @@ fn main() {
          eprintln!(
              "rustdoc command: {:?}={:?} {:?}",
              bootstrap::util::dylib_path_var(),
@@ -41,5 +41,5 @@ index 6937fb92..ce787609 100644
          );
          eprintln!("sysroot: {:?}", sysroot);
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch b/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
index 0da09ab5e57..fe69b763f3f 100644
--- a/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
+++ b/srcpkgs/rust/patches/0003-Require-static-native-libraries-when-linking-static-.patch
@@ -1,7 +1,7 @@
-From 33aff948106db1150cc7c1f457e74c4dbf95f74a Mon Sep 17 00:00:00 2001
+From baa7ce46f19e3584d70e47c8df28c084e76446da Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
-Date: Fri, 8 Sep 2017 00:05:18 -0500
-Subject: [PATCH 03/16] Require static native libraries when linking static
+Date: Sun, 3 May 2020 17:48:47 +0200
+Subject: [PATCH 03/15] Require static native libraries when linking static
  executables
 
 On ELF targets like Linux, gcc/ld will create a dynamically-linked
@@ -16,10 +16,10 @@ Fixes #54243
  1 file changed, 14 insertions(+), 4 deletions(-)
 
 diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs
-index a2b50ea8..3250ec4d 100644
+index 0dd2f029..f22b4277 100644
 --- a/src/librustc_codegen_ssa/back/link.rs
 +++ b/src/librustc_codegen_ssa/back/link.rs
-@@ -1610,9 +1610,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(
+@@ -1741,9 +1741,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(
      }
  }
  
@@ -30,8 +30,8 @@ index a2b50ea8..3250ec4d 100644
  //
  // 1. The upstream crate is an rlib. In this case we *must* link in the
  // native dependency because the rlib is just an archive.
-@@ -1659,7 +1657,19 @@ pub fn add_upstream_native_libraries(
-                 continue
+@@ -1792,7 +1790,19 @@ pub fn add_upstream_native_libraries(
+                 continue;
              }
              match lib.kind {
 -                NativeLibraryKind::NativeUnknown => cmd.link_dylib(name),
@@ -52,5 +52,5 @@ index a2b50ea8..3250ec4d 100644
                  NativeLibraryKind::NativeStaticNobundle => {
                      // Link "static-nobundle" native libs only if the crate they originate from
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch b/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
index e22b7e08487..06e42fdf1e3 100644
--- a/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
+++ b/srcpkgs/rust/patches/0004-Remove-nostdlib-and-musl_root-from-musl-targets.patch
@@ -1,24 +1,24 @@
-From 06b84a9e3d7514ac23953ad76242710444d2a0c1 Mon Sep 17 00:00:00 2001
+From 4654172e942b5b9250aff70101d54bc880060073 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:46:22 +0100
-Subject: [PATCH 04/16] Remove -nostdlib and musl_root from musl targets
+Date: Sun, 3 May 2020 17:53:33 +0200
+Subject: [PATCH 04/15] Remove -nostdlib and musl_root from musl targets
 
 ---
  config.toml.example                         |  3 ---
- src/bootstrap/cc_detect.rs                  | 27 +++-----------------
+ src/bootstrap/cc_detect.rs                  | 25 ++----------------
  src/bootstrap/compile.rs                    | 22 +---------------
  src/bootstrap/config.rs                     |  7 ------
  src/bootstrap/configure.py                  | 28 ---------------------
- src/bootstrap/lib.rs                        |  8 ------
- src/bootstrap/sanity.rs                     | 24 ------------------
+ src/bootstrap/lib.rs                        | 10 --------
+ src/bootstrap/sanity.rs                     | 22 ----------------
  src/librustc_target/spec/linux_musl_base.rs | 16 ------------
- 8 files changed, 4 insertions(+), 131 deletions(-)
+ 8 files changed, 3 insertions(+), 130 deletions(-)
 
 diff --git a/config.toml.example b/config.toml.example
-index 5152a6c9..1d411c5c 100644
+index ce21b634..f14a5660 100644
 --- a/config.toml.example
 +++ b/config.toml.example
-@@ -340,9 +340,6 @@
+@@ -352,9 +352,6 @@
  # nightly features
  #channel = "dev"
  
@@ -29,10 +29,10 @@ index 5152a6c9..1d411c5c 100644
  # platforms to ensure that the compiler is usable by default from the build
  # directory (as it links to a number of dynamic libraries). This may not be
 diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs
-index a4cb81d3..b4247e74 100644
+index a236edf9..54c3cc64 100644
 --- a/src/bootstrap/cc_detect.rs
 +++ b/src/bootstrap/cc_detect.rs
-@@ -86,7 +86,7 @@ pub fn find(build: &mut Build) {
+@@ -97,7 +97,7 @@ pub fn find(build: &mut Build) {
          if let Some(cc) = config.and_then(|c| c.cc.as_ref()) {
              cfg.compiler(cc);
          } else {
@@ -41,7 +41,7 @@ index a4cb81d3..b4247e74 100644
          }
  
          let compiler = cfg.get_compiler();
-@@ -109,7 +109,7 @@ pub fn find(build: &mut Build) {
+@@ -125,7 +125,7 @@ pub fn find(build: &mut Build) {
              cfg.compiler(cxx);
              true
          } else if build.hosts.contains(&target) || build.build == target {
@@ -50,17 +50,15 @@ index a4cb81d3..b4247e74 100644
              true
          } else {
              false
-@@ -136,8 +136,7 @@ pub fn find(build: &mut Build) {
- fn set_compiler(cfg: &mut cc::Build,
-                 compiler: Language,
-                 target: Interned<String>,
--                config: Option<&Target>,
--                build: &Build) {
-+                config: Option<&Target>) {
+@@ -154,7 +154,6 @@ fn set_compiler(
+     compiler: Language,
+     target: Interned<String>,
+     config: Option<&Target>,
+-    build: &Build,
+ ) {
      match &*target {
          // When compiling for android we may have the NDK configured in the
-         // config.toml in which case we look there. Otherwise the default
-@@ -177,26 +176,6 @@ fn set_compiler(cfg: &mut cc::Build,
+@@ -196,26 +195,6 @@ fn set_compiler(
              }
          }
  
@@ -88,10 +86,10 @@ index a4cb81d3..b4247e74 100644
      }
  }
 diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
-index 831053bc..3e49d459 100644
+index 65a00db3..01fd2cf3 100644
 --- a/src/bootstrap/compile.rs
 +++ b/src/bootstrap/compile.rs
-@@ -130,18 +130,7 @@ fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target:
+@@ -125,18 +125,7 @@ fn copy_third_party_objects(
          target_deps.push(target);
      };
  
@@ -111,7 +109,7 @@ index 831053bc..3e49d459 100644
          let srcdir = builder.wasi_root(target).unwrap().join("lib/wasm32-wasi");
          copy_and_stamp(&srcdir, "crt1.o");
      }
-@@ -227,15 +216,6 @@ pub fn std_cargo(builder: &Builder<'_>,
+@@ -213,15 +202,6 @@ pub fn std_cargo(builder: &Builder<'_>, target: Interned<String>, cargo: &mut Ca
              .arg("--manifest-path")
              .arg(builder.src.join("src/libtest/Cargo.toml"));
  
@@ -128,10 +126,10 @@ index 831053bc..3e49d459 100644
              if let Some(p) = builder.wasi_root(target) {
                  let root = format!("native={}/lib/wasm32-wasi", p.to_str().unwrap());
 diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
-index 5f2ef01b..c291d3a0 100644
+index 56164b74..8c46334a 100644
 --- a/src/bootstrap/config.rs
 +++ b/src/bootstrap/config.rs
-@@ -130,8 +130,6 @@ pub struct Config {
+@@ -134,8 +134,6 @@ pub struct Config {
      pub print_step_timings: bool,
      pub missing_tools: bool,
  
@@ -140,7 +138,7 @@ index 5f2ef01b..c291d3a0 100644
      pub prefix: Option<PathBuf>,
      pub sysconfdir: Option<PathBuf>,
      pub datadir: Option<PathBuf>,
-@@ -166,7 +164,6 @@ pub struct Target {
+@@ -171,7 +169,6 @@ pub struct Target {
      pub linker: Option<PathBuf>,
      pub ndk: Option<PathBuf>,
      pub crt_static: Option<bool>,
@@ -148,7 +146,7 @@ index 5f2ef01b..c291d3a0 100644
      pub wasi_root: Option<PathBuf>,
      pub qemu_rootfs: Option<PathBuf>,
      pub no_std: bool,
-@@ -306,7 +303,6 @@ struct Rust {
+@@ -322,7 +319,6 @@ struct Rust {
      parallel_compiler: Option<bool>,
      default_linker: Option<String>,
      channel: Option<String>,
@@ -156,15 +154,15 @@ index 5f2ef01b..c291d3a0 100644
      rpath: Option<bool>,
      verbose_tests: Option<bool>,
      optimize_tests: Option<bool>,
-@@ -340,7 +336,6 @@ struct TomlTarget {
+@@ -359,7 +355,6 @@ struct TomlTarget {
      llvm_filecheck: Option<String>,
      android_ndk: Option<String>,
      crt_static: Option<bool>,
 -    musl_root: Option<String>,
      wasi_root: Option<String>,
      qemu_rootfs: Option<String>,
- }
-@@ -559,7 +554,6 @@ impl Config {
+     no_std: Option<bool>,
+@@ -585,7 +580,6 @@ impl Config {
              set(&mut config.llvm_tools_enabled, rust.llvm_tools);
              config.rustc_parallel = rust.parallel_compiler.unwrap_or(false);
              config.rustc_default_linker = rust.default_linker.clone();
@@ -172,19 +170,19 @@ index 5f2ef01b..c291d3a0 100644
              config.save_toolstates = rust.save_toolstates.clone().map(PathBuf::from);
              set(&mut config.deny_warnings, flags.deny_warnings.or(rust.deny_warnings));
              set(&mut config.backtrace_on_ice, rust.backtrace_on_ice);
-@@ -595,7 +589,6 @@ impl Config {
+@@ -625,7 +619,6 @@ impl Config {
                  target.ranlib = cfg.ranlib.clone().map(PathBuf::from);
                  target.linker = cfg.linker.clone().map(PathBuf::from);
-                 target.crt_static = cfg.crt_static.clone();
+                 target.crt_static = cfg.crt_static;
 -                target.musl_root = cfg.musl_root.clone().map(PathBuf::from);
                  target.wasi_root = cfg.wasi_root.clone().map(PathBuf::from);
                  target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from);
  
 diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py
-index bb6041d7..73f3781c 100755
+index 2a46c563..025928b9 100755
 --- a/src/bootstrap/configure.py
 +++ b/src/bootstrap/configure.py
-@@ -109,34 +109,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk",
+@@ -110,34 +110,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk",
    "aarch64-linux-android NDK standalone path")
  v("x86_64-linux-android-ndk", "target.x86_64-linux-android.android-ndk",
    "x86_64-linux-android NDK standalone path")
@@ -220,29 +218,31 @@ index bb6041d7..73f3781c 100755
    "rootfs in qemu testing, you probably don't want to use this")
  v("qemu-aarch64-rootfs", "target.aarch64-unknown-linux-gnu.qemu-rootfs",
 diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
-index e9b7976d..c4203e83 100644
+index c7e63990..77bbb2cd 100644
 --- a/src/bootstrap/lib.rs
 +++ b/src/bootstrap/lib.rs
-@@ -827,14 +827,6 @@ impl Build {
+@@ -845,16 +845,6 @@ impl Build {
          }
      }
  
 -    /// Returns the "musl root" for this `target`, if defined
 -    fn musl_root(&self, target: Interned<String>) -> Option<&Path> {
--        self.config.target_config.get(&target)
+-        self.config
+-            .target_config
+-            .get(&target)
 -            .and_then(|t| t.musl_root.as_ref())
--            .or(self.config.musl_root.as_ref())
+-            .or_else(|| self.config.musl_root.as_ref())
 -            .map(|p| &**p)
 -    }
 -
      /// Returns the sysroot for the wasi target, if defined
      fn wasi_root(&self, target: Interned<String>) -> Option<&Path> {
-         self.config.target_config.get(&target)
+         self.config.target_config.get(&target).and_then(|t| t.wasi_root.as_ref()).map(|p| &**p)
 diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs
-index bffe748f..3b109548 100644
+index 530e74da..8ec9f046 100644
 --- a/src/bootstrap/sanity.rs
 +++ b/src/bootstrap/sanity.rs
-@@ -187,30 +187,6 @@ pub fn check(build: &mut Build) {
+@@ -201,28 +201,6 @@ pub fn check(build: &mut Build) {
              }
          }
  
@@ -251,22 +251,20 @@ index bffe748f..3b109548 100644
 -            // If this is a native target (host is also musl) and no musl-root is given,
 -            // fall back to the system toolchain in /usr before giving up
 -            if build.musl_root(*target).is_none() && build.config.build == *target {
--                let target = build.config.target_config.entry(target.clone())
--                    .or_default();
+-                let target = build.config.target_config.entry(target.clone()).or_default();
 -                target.musl_root = Some("/usr".into());
 -            }
 -            match build.musl_root(*target) {
 -                Some(root) => {
 -                    if fs::metadata(root.join("lib/libc.a")).is_err() {
--                        panic!("couldn't find libc.a in musl dir: {}",
--                               root.join("lib").display());
+-                        panic!("couldn't find libc.a in musl dir: {}", root.join("lib").display());
 -                    }
 -                }
--                None => {
--                    panic!("when targeting MUSL either the rust.musl-root \
+-                None => panic!(
+-                    "when targeting MUSL either the rust.musl-root \
 -                            option or the target.$TARGET.musl-root option must \
--                            be specified in config.toml")
--                }
+-                            be specified in config.toml"
+-                ),
 -            }
 -        }
 -
@@ -307,5 +305,5 @@ index e294e639..58ae91a9 100644
      base.crt_static_default = true;
      // These targets allow the user to choose between static and dynamic linking.
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
similarity index 67%
rename from srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch
rename to srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
index a738e8c4bc1..0f65179eb40 100644
--- a/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch
+++ b/srcpkgs/rust/patches/0005-Prefer-libgcc_eh-over-libunwind-on-musl.patch
@@ -1,25 +1,24 @@
-From 6c6ccb3928deffd97a75ef2d9417aae467cd7031 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:49:07 +0100
-Subject: [PATCH 05/16] Prefer libgcc_eh over libunwind for musl
+From a640bce17d908a0691d53f22e5257353f694d9b6 Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Sun, 3 May 2020 17:55:50 +0200
+Subject: [PATCH 05/15] Prefer libgcc_eh over libunwind on musl
 
-+ @q66 changes to smaeul's original patch for Void's musl setup
 ---
- src/libunwind/build.rs | 17 ++---------------
+ src/libunwind/build.rs | 16 ++--------------
  src/libunwind/lib.rs   |  2 +-
- 2 files changed, 3 insertions(+), 16 deletions(-)
+ 2 files changed, 3 insertions(+), 15 deletions(-)
 
 diff --git a/src/libunwind/build.rs b/src/libunwind/build.rs
-index b8db16f8..0c69b9d2 100644
+index a24808b3..a1250889 100644
 --- a/src/libunwind/build.rs
 +++ b/src/libunwind/build.rs
-@@ -5,15 +5,11 @@ fn main() {
+@@ -5,15 +5,12 @@ fn main() {
      let target = env::var("TARGET").expect("TARGET was not set");
  
-     if cfg!(feature = "llvm-libunwind") &&
--        ((target.contains("linux") && !target.contains("musl")) ||
--         target.contains("fuchsia")) {
-+        (target.contains("linux") || target.contains("fuchsia")) {
+     if cfg!(feature = "llvm-libunwind")
+-        && ((target.contains("linux") && !target.contains("musl")) || target.contains("fuchsia"))
++        && (target.contains("linux") || target.contains("fuchsia"))
+     {
          // Build the unwinding from libunwind C/C++ source code.
          llvm_libunwind::compile();
      } else if target.contains("linux") {
@@ -31,7 +30,7 @@ index b8db16f8..0c69b9d2 100644
              println!("cargo:rustc-link-lib=gcc_s");
          }
      } else if target.contains("freebsd") {
-@@ -105,15 +101,6 @@ mod llvm_libunwind {
+@@ -105,15 +102,6 @@ mod llvm_libunwind {
              cfg.file(root.join("src").join(src));
          }
  
@@ -48,18 +47,18 @@ index b8db16f8..0c69b9d2 100644
      }
  }
 diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs
-index 8d916447..6d653d41 100644
+index 18d41be7..17f73d69 100644
 --- a/src/libunwind/lib.rs
 +++ b/src/libunwind/lib.rs
-@@ -21,7 +21,7 @@ cfg_if::cfg_if! {
+@@ -19,7 +19,7 @@ cfg_if::cfg_if! {
  }
  
  #[cfg(target_env = "musl")]
 -#[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))]
 +#[link(name = "gcc_eh", cfg(target_feature = "crt-static"))]
  #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))]
- extern {}
+ extern "C" {}
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch b/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
deleted file mode 100644
index fded751ef39..00000000000
--- a/srcpkgs/rust/patches/0006-Fix-zero-sized-aggregate-ABI-on-powerpc.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From d54189d6441d59ba623b561438e3ce0664ab2101 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 21 Dec 2019 16:55:07 +0100
-Subject: [PATCH 06/16] Fix zero-sized aggregate ABI on powerpc
-
-For targets that pass zero-sized aggregates indirectly (generally
-those that pass all aggregates indirectly), we must allocate a register
-for passing the address of the ZST. Clean up the existing cases and add
-powerpc, which requires this as well.
-
-While there are not currently musl targets for s390x or sparc64, they
-would have the same ABI as gnu targets, so remove the env == "gnu" check
-in the Linux case.
-
-Ideally, since it is a property of the C ABI, the `!rust_abi` case would
-be handled entirely in `adjust_c_abi`. However, that would require
-updating each implementation of `compute_abi_info` to handle ZSTs.
----
- src/librustc/ty/layout.rs | 20 +++++++++-----------
- 1 file changed, 9 insertions(+), 11 deletions(-)
-
-diff --git a/src/librustc/ty/layout.rs b/src/librustc/ty/layout.rs
-index c7278dc4..2e5ea499 100644
---- a/src/librustc/ty/layout.rs
-+++ b/src/librustc/ty/layout.rs
-@@ -2576,12 +2576,11 @@ where
-         };
- 
-         let target = &cx.tcx().sess.target.target;
--        let win_x64_gnu =
--            target.target_os == "windows" && target.arch == "x86_64" && target.target_env == "gnu";
--        let linux_s390x =
--            target.target_os == "linux" && target.arch == "s390x" && target.target_env == "gnu";
--        let linux_sparc64 =
--            target.target_os == "linux" && target.arch == "sparc64" && target.target_env == "gnu";
-+        let indirect_zst = match target.arch.as_ref() {
-+            "powerpc" | "s390x" | "sparc64" => true,
-+            "x86_64" => target.target_os == "windows" && target.target_env == "gnu",
-+            _ => false,
-+        };
-         let rust_abi = match sig.abi {
-             RustIntrinsic | PlatformIntrinsic | Rust | RustCall => true,
-             _ => false,
-@@ -2650,11 +2649,10 @@ where
-             let is_return = arg_idx.is_none();
-             let mut arg = mk_arg_type(ty, arg_idx);
-             if arg.layout.is_zst() {
--                // For some forsaken reason, x86_64-pc-windows-gnu
--                // doesn't ignore zero-sized struct arguments.
--                // The same is true for s390x-unknown-linux-gnu
--                // and sparc64-unknown-linux-gnu.
--                if is_return || rust_abi || (!win_x64_gnu && !linux_s390x && !linux_sparc64) {
-+                // FIXME: The C ABI case should be handled in adjust_for_cabi.
-+                // Zero-sized struct arguments cannot be ignored in the C ABI
-+                // if they are passed indirectly.
-+                if is_return || rust_abi || !indirect_zst {
-                     arg.mode = PassMode::Ignore;
-                 }
-             }
--- 
-2.25.0
-
diff --git a/srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
similarity index 86%
rename from srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch
rename to srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
index 05bfa3a75c3..c80fe155224 100644
--- a/srcpkgs/rust/patches/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch
+++ b/srcpkgs/rust/patches/0006-test-use-extern-for-plugins-Don-t-assume-multilib.patch
@@ -1,7 +1,7 @@
-From 07274f2e91b0d91102dcb5397783295d7a27b8b2 Mon Sep 17 00:00:00 2001
+From e44838dabefa1a62578895b4465717f7be8a7a86 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 6 Oct 2018 04:01:48 +0000
-Subject: [PATCH 07/16] test/use-extern-for-plugins: Don't assume multilib
+Subject: [PATCH 06/15] test/use-extern-for-plugins: Don't assume multilib
 
 ---
  src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------
@@ -26,5 +26,5 @@ index 838b1a27..94fa9f6d 100644
  all:
  	$(RUSTC) foo.rs -C extra-filename=-host
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
similarity index 84%
rename from srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
rename to srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
index b4bc17df027..8a9986f6411 100644
--- a/srcpkgs/rust/patches/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
+++ b/srcpkgs/rust/patches/0007-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
@@ -1,7 +1,7 @@
-From d1ac85fbff21dc1d808308cc6f5a90b0cc562f2f Mon Sep 17 00:00:00 2001
+From cde014a1108b7d1cea85100cad48b12297267405 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Mon, 17 Sep 2018 01:32:20 +0000
-Subject: [PATCH 08/16] test/sysroot-crates-are-unstable: Fix test when rpath
+Subject: [PATCH 07/15] test/sysroot-crates-are-unstable: Fix test when rpath
  is disabled
 
 Without this environment var, the test can't run rustc to find
@@ -21,5 +21,5 @@ index a35174b3..9e770706 100644
 -	python2.7 test.py
 +	env '$(HOST_RPATH_ENV)' python2.7 test.py
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch b/srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
similarity index 95%
rename from srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch
rename to srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
index 187003cf38b..f9d64723903 100644
--- a/srcpkgs/rust/patches/0009-Ignore-broken-and-non-applicable-tests.patch
+++ b/srcpkgs/rust/patches/0008-Ignore-broken-and-non-applicable-tests.patch
@@ -1,7 +1,7 @@
-From 6cbefd6ad105c833052919319db3564966572ceb Mon Sep 17 00:00:00 2001
+From c63745a2777648d530898bae5af9d25266472b05 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Sat, 21 Dec 2019 17:00:40 +0100
-Subject: [PATCH 09/16] Ignore broken and non-applicable tests
+Subject: [PATCH 08/15] Ignore broken and non-applicable tests
 
 c-link-to-rust-va-list-fn: unstable feature, broken on aarch64, #56475
 env-funky-keys: can't handle LD_PRELOAD (e.g. sandbox)
@@ -62,7 +62,7 @@ index 9e770706..6d92ec5c 100644
  
  all:
 diff --git a/src/test/ui/env-funky-keys.rs b/src/test/ui/env-funky-keys.rs
-index 4faceb53..09764dc3 100644
+index c5c824ac..f3fe047a 100644
 --- a/src/test/ui/env-funky-keys.rs
 +++ b/src/test/ui/env-funky-keys.rs
 @@ -1,6 +1,7 @@
@@ -87,5 +87,5 @@ index b28f742a..3ee4ccce 100644
  // Test that the simd_bitmask intrinsic produces correct results.
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch b/srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
similarity index 71%
rename from srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch
rename to srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
index b63e27ebb42..40f896bb980 100644
--- a/srcpkgs/rust/patches/0010-Link-stage2-tools-dynamically-to-libstd.patch
+++ b/srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
@@ -1,7 +1,7 @@
-From cdb82589b4be62c11186e4645a5fd358f5c55421 Mon Sep 17 00:00:00 2001
+From f5dad49f112151bb0ee74570e971bd475cbec128 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:01:59 +0100
-Subject: [PATCH 10/16] Link stage2 tools dynamically to libstd
+Date: Sun, 3 May 2020 18:00:09 +0200
+Subject: [PATCH 09/15] Link stage2 tools dynamically to libstd
 
 Replaces an older patch by Samuel Holland. The RUSTC_NO_PREFER_DYNAMIC
 env var was removed and replaced with the following logic in builder.rs.
@@ -14,10 +14,10 @@ be statically linked for convenience.
  1 file changed, 2 insertions(+)
 
 diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 8b0ad169..4bc13ac2 100644
+index eb0199fd..0ec7cbd8 100644
 --- a/src/bootstrap/builder.rs
 +++ b/src/bootstrap/builder.rs
-@@ -1228,6 +1228,8 @@ impl<'a> Builder<'a> {
+@@ -1236,6 +1236,8 @@ impl<'a> Builder<'a> {
          // linking all deps statically into the dylib.
          if let Mode::Std | Mode::Rustc | Mode::Codegen = mode {
              rustflags.arg("-Cprefer-dynamic");
@@ -25,7 +25,7 @@ index 8b0ad169..4bc13ac2 100644
 +            rustflags.arg("-Cprefer-dynamic");
          }
  
-         Cargo {
+         // When building incrementally we default to a lower ThinLTO import limit
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch b/srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
similarity index 89%
rename from srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch
rename to srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
index 51ac2cdf4d7..a48c6ff1c4a 100644
--- a/srcpkgs/rust/patches/0011-Move-debugger-scripts-to-usr-share-rust.patch
+++ b/srcpkgs/rust/patches/0010-Move-debugger-scripts-to-usr-share-rust.patch
@@ -1,7 +1,7 @@
-From be61ad716d24f7fb0ee52b234cbf922d09bc686a Mon Sep 17 00:00:00 2001
+From 9b0c14783127e195d7bd54ca2c0c498a46714964 Mon Sep 17 00:00:00 2001
 From: Samuel Holland <samuel@sholland.org>
 Date: Mon, 17 Sep 2018 02:09:10 +0000
-Subject: [PATCH 11/16] Move debugger scripts to /usr/share/rust
+Subject: [PATCH 10/15] Move debugger scripts to /usr/share/rust
 
 ---
  src/bootstrap/dist.rs | 2 +-
@@ -10,10 +10,10 @@ Subject: [PATCH 11/16] Move debugger scripts to /usr/share/rust
  3 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
-index 02533944..375f2413 100644
+index 8215211e..05a173b4 100644
 --- a/src/bootstrap/dist.rs
 +++ b/src/bootstrap/dist.rs
-@@ -593,7 +593,7 @@ impl Step for DebuggerScripts {
+@@ -603,7 +603,7 @@ impl Step for DebuggerScripts {
      fn run(self, builder: &Builder<'_>) {
          let host = self.host;
          let sysroot = self.sysroot;
@@ -49,5 +49,5 @@ index 7b9b40e6..e471db36 100755
  category_enable="type category enable Rust"
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch b/srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
similarity index 87%
rename from srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch
rename to srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
index 370e0709ebe..0492242be10 100644
--- a/srcpkgs/rust/patches/0012-Dynamically-link-libc-on-musl-by-default.patch
+++ b/srcpkgs/rust/patches/0011-Dynamically-link-libc-on-musl-by-default.patch
@@ -1,7 +1,7 @@
-From f277b9c07cd6d096fad370a76c6dfdfb03aa3d1e Mon Sep 17 00:00:00 2001
+From d72ad9c226b4ed225c23d88ec5dbe6ba321b37ad Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
 Date: Sat, 21 Dec 2019 17:04:13 +0100
-Subject: [PATCH 12/16] Dynamically link libc on musl by default
+Subject: [PATCH 11/15] Dynamically link libc on musl by default
 
 ---
  src/librustc_target/spec/linux_musl_base.rs | 3 +--
@@ -22,5 +22,5 @@ index 58ae91a9..1fae72d6 100644
      base.crt_static_respected = true;
  
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch b/srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
similarity index 84%
rename from srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
rename to srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
index b4cb7addfca..e0b567c419e 100644
--- a/srcpkgs/rust/patches/0013-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
+++ b/srcpkgs/rust/patches/0012-Fix-dynamic-linkage-of-musl-libc-for-the-libc-crate.patch
@@ -1,7 +1,7 @@
-From 191b56a4e8c307e531a446f8cceb4ecc732beace Mon Sep 17 00:00:00 2001
+From e363a0e0ff7ffc8bd83f72ec1a20d289996b6370 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:04:55 +0100
-Subject: [PATCH 13/16] Fix dynamic linkage of musl libc for the libc crate
+Date: Sun, 3 May 2020 18:02:03 +0200
+Subject: [PATCH 12/15] Fix dynamic linkage of musl libc for the libc crate
 
 ---
  vendor/libc/src/lib.rs      | 1 +
@@ -9,7 +9,7 @@ Subject: [PATCH 13/16] Fix dynamic linkage of musl libc for the libc crate
  2 files changed, 4 insertions(+), 3 deletions(-)
 
 diff --git a/vendor/libc/src/lib.rs b/vendor/libc/src/lib.rs
-index 3255303e..bfbd2d7a 100644
+index 0b1496af..7f7e85a7 100644
 --- a/vendor/libc/src/lib.rs
 +++ b/vendor/libc/src/lib.rs
 @@ -33,6 +33,7 @@
@@ -18,8 +18,8 @@ index 3255303e..bfbd2d7a 100644
  #![cfg_attr(feature = "rustc-dep-of-std", no_core)]
 +#![cfg_attr(feature = "rustc-dep-of-std", feature(static_nobundle))]
  #![cfg_attr(target_os = "redox", feature(static_nobundle))]
+ #![cfg_attr(libc_const_extern_fn, feature(const_extern_fn))]
  
- #[macro_use]
 diff --git a/vendor/libc/src/unix/mod.rs b/vendor/libc/src/unix/mod.rs
 index 238da24b..ffb05ee7 100644
 --- a/vendor/libc/src/unix/mod.rs
@@ -40,5 +40,5 @@ index 238da24b..ffb05ee7 100644
      } else if #[cfg(target_os = "emscripten")] {
          #[link(name = "c")]
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch b/srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
similarity index 87%
rename from srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch
rename to srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
index 2fab5da83b2..46fac863858 100644
--- a/srcpkgs/rust/patches/0014-round-result-of-highest-as-f64-.log-2.0.patch
+++ b/srcpkgs/rust/patches/0013-round-result-of-highest-as-f64-.log-2.0.patch
@@ -1,7 +1,7 @@
-From a5843bb05ebd94b8acaa7a011c1db7abdc112e5c Mon Sep 17 00:00:00 2001
+From d74af8923022dd369315ada0a06e467dffd127cf Mon Sep 17 00:00:00 2001
 From: Michael Hudson-Doyle <michael.hudson@canonical.com>
 Date: Wed, 13 Mar 2019 15:55:30 +1300
-Subject: [PATCH 14/16] round result of (highest as f64).log(2.0)
+Subject: [PATCH 13/15] round result of (highest as f64).log(2.0)
 
 Even though (1024f64).log(2.0) has an exact, representable, value, with
 rustc 1.32 on i386 it comes out as +9.999999999999999985 with
@@ -25,5 +25,5 @@ index 9c9f237c..153031a2 100644
      let uints = (0..(highest + 1))
          .chain((first2..64).map(|i| 2u64.pow(i)))
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch b/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
new file mode 100644
index 00000000000..fb01e60fa5e
--- /dev/null
+++ b/srcpkgs/rust/patches/0014-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
@@ -0,0 +1,31 @@
+From 07efbc3bdd67de4e13b0f3f4df853a9de0800ec3 Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Sun, 3 May 2020 18:05:22 +0200
+Subject: [PATCH 14/15] Void: fix linkage against host/target LLVM in cross
+ setups
+
+---
+ src/librustc_llvm/build.rs | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
+index 9b4f03b3..d0167838 100644
+--- a/src/librustc_llvm/build.rs
++++ b/src/librustc_llvm/build.rs
+@@ -217,9 +217,11 @@ fn main() {
+     for lib in output(&mut cmd).split_whitespace() {
+         if is_crossed {
+             if lib.starts_with("-LIBPATH:") {
+-                println!("cargo:rustc-link-search=native={}", lib[9..].replace(&host, &target));
++                println!("cargo:rustc-link-search=native={}{}",
++                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[9..]);
+             } else if lib.starts_with("-L") {
+-                println!("cargo:rustc-link-search=native={}", lib[2..].replace(&host, &target));
++                println!("cargo:rustc-link-search=native={}{}",
++                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[2..]);
+             }
+         } else if lib.starts_with("-LIBPATH:") {
+             println!("cargo:rustc-link-search=native={}", &lib[9..]);
+-- 
+2.26.2
+
diff --git a/srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch b/srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
similarity index 65%
rename from srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
rename to srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
index 94bad4b8795..bb9269e43bb 100644
--- a/srcpkgs/rust/patches/0016-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
+++ b/srcpkgs/rust/patches/0015-Use-ELFv2-ABI-on-all-powerpc64-targets.patch
@@ -1,36 +1,43 @@
-From 923d16b37c381d73ce0f88403256b26af3edf1bd Mon Sep 17 00:00:00 2001
+From c6b54a373e74a1e4ce64f349b5b69105f2bc1a49 Mon Sep 17 00:00:00 2001
 From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:06:55 +0100
-Subject: [PATCH 16/16] Use ELFv2 ABI on all powerpc64 targets
+Date: Sun, 3 May 2020 18:08:09 +0200
+Subject: [PATCH 15/15] Use ELFv2 ABI on all powerpc64 targets
 
 This patches librustc_target so that ELFv2 is used everywhere, matching our
 LLVM. While this is not perfect (it does not allow rustc to compile legacy
 binaries), rustc never requests specific ABI from llvm in the first place,
 so at least match the environment we have.
 ---
- src/librustc_target/abi/call/powerpc64.rs               | 2 +-
+ src/librustc_target/abi/call/powerpc64.rs               | 9 +--------
  src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs | 6 +-----
- 2 files changed, 2 insertions(+), 6 deletions(-)
+ 2 files changed, 2 insertions(+), 13 deletions(-)
 
 diff --git a/src/librustc_target/abi/call/powerpc64.rs b/src/librustc_target/abi/call/powerpc64.rs
-index fe459480..997593b9 100644
+index 93c4e97d..96b02486 100644
 --- a/src/librustc_target/abi/call/powerpc64.rs
 +++ b/src/librustc_target/abi/call/powerpc64.rs
-@@ -117,7 +117,7 @@ pub fn compute_abi_info<'a, Ty, C>(cx: &C, fn_abi: &mut FnAbi<'a, Ty>)
-     where Ty: TyLayoutMethods<'a, C> + Copy,
-           C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec
+@@ -119,14 +119,7 @@ where
+     Ty: TyLayoutMethods<'a, C> + Copy,
+     C: LayoutOf<Ty = Ty, TyLayout = TyLayout<'a, Ty>> + HasDataLayout + HasTargetSpec,
  {
 -    let abi = if cx.target_spec().target_env == "musl" {
-+    let abi = if cx.target_spec().target_env == "musl" || cx.target_spec().target_env == "gnu" {
-         ELFv2
-     } else {
-         match cx.data_layout().endian {
+-        ELFv2
+-    } else {
+-        match cx.data_layout().endian {
+-            Endian::Big => ELFv1,
+-            Endian::Little => ELFv2,
+-        }
+-    };
++    let abi = ELFv2;
+ 
+     if !fn_abi.ret.is_ignore() {
+         classify_ret(cx, &mut fn_abi.ret, abi);
 diff --git a/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs b/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
-index 89e68ab3..77659cdd 100644
+index 5306d905..c63eed85 100644
 --- a/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
 +++ b/src/librustc_target/spec/powerpc64_unknown_linux_gnu.rs
 @@ -1,4 +1,4 @@
--use crate::spec::{LinkerFlavor, Target, TargetOptions, TargetResult, RelroLevel};
+-use crate::spec::{LinkerFlavor, RelroLevel, Target, TargetOptions, TargetResult};
 +use crate::spec::{LinkerFlavor, Target, TargetOptions, TargetResult};
  
  pub fn target() -> TargetResult {
@@ -47,5 +54,5 @@ index 89e68ab3..77659cdd 100644
          llvm_target: "powerpc64-unknown-linux-gnu".to_string(),
          target_endian: "big".to_string(),
 -- 
-2.25.0
+2.26.2
 
diff --git a/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch b/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
deleted file mode 100644
index 1d10ac2f1f3..00000000000
--- a/srcpkgs/rust/patches/0015-Void-fix-linkage-against-host-target-LLVM-in-cross-s.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From e83770856411e2ff780551143fc6c26a8552741e Mon Sep 17 00:00:00 2001
-From: q66 <daniel@octaforge.org>
-Date: Sat, 21 Dec 2019 17:06:17 +0100
-Subject: [PATCH 15/16] Void: fix linkage against host/target LLVM in cross
- setups
-
----
- src/librustc_llvm/build.rs | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
-index c5d5f066..91799142 100644
---- a/src/librustc_llvm/build.rs
-+++ b/src/librustc_llvm/build.rs
-@@ -225,8 +225,8 @@ fn main() {
-             println!("cargo:rustc-link-search=native={}", &lib[9..]);
-         } else if is_crossed {
-             if lib.starts_with("-L") {
--                println!("cargo:rustc-link-search=native={}",
--                         lib[2..].replace(&host, &target));
-+                println!("cargo:rustc-link-search=native={}{}",
-+                         env::var("XBPS_CROSS_BASE").unwrap(), &lib[2..]);
-             }
-         } else if lib.starts_with("-l") {
-             println!("cargo:rustc-link-lib={}", &lib[2..]);
--- 
-2.25.0
-
diff --git a/srcpkgs/rust/template b/srcpkgs/rust/template
index e7421cf4e04..bc6b834862f 100644
--- a/srcpkgs/rust/template
+++ b/srcpkgs/rust/template
@@ -4,10 +4,10 @@
 # Permission to use rust and cargo trademark is granted.
 # See: https://github.com/rust-lang/core-team/issues/4
 pkgname=rust
-version=1.41.1
-revision=2
-_rust_dist_version=1.40.0
-_cargo_dist_version=0.41.0
+version=1.43.0
+revision=1
+_rust_dist_version=1.43.0
+_cargo_dist_version=0.44.0
 # Always make sure custom distfiles used for bootstrap are
 # uploaded to https://alpha.de.repo.voidlinux.org/distfiles/
 wrksrc="rustc-${version}-src"
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://www.rust-lang.org/"
 distfiles="https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"
-checksum=38c93d016e6d3e083aa15e8f65511d3b4983072c0218a529f5ee94dd1de84573
+checksum=75f6ac6c9da9f897f4634d5a07be4084692f7ccc2d2bb89337be86cfc18453a1
 lib32disabled=yes
 patch_args="-Np1"
 
@@ -68,39 +68,39 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 aa07a07ad272de825da8c18ad8dc4143a25bd28e5538d68c3bced53f060432b4
-			 4eb3141fb6c3d3e101b5d4493664c9a01d4bb9eebdf4b96f5c26a81188c2452d
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 72eb572fa451b96369de807d3e92cf0320c5ce5099758a2c974e2ebcc4b23325
+			 098fe3991cd282b77629811fbaaec848ded3448252a8d5f788a406676ae58639
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 2c8ffeaa23d8ae0e1776af068bd92ba5cd15973696956a2b58c215a940721e67
-			 c40f696c8afdcaafec50ddc29b9d8c836efa01b681e8ca48d09fcf79576ee039
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 8ebf27b8041f026f925d8807ec0834f8cd98ee8572a796ec21724162777d5557
+			 b8fa66a013aaecc82ad06ab20bc2a08949cf0c5b9b7d20bf9950aac8a3ea0600
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 0f4d02f2d21d8f4b23829502130c89599f2315bb9adcee4f1b5109ee68a187ab
-			 8edd65b1f53485caa134d1625131e76f7ca072366cc5df3e2761a39f52f7e83f
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 ac8706969c71b78c311f6de10276b788dac6a67cd264301c55df6e93797b9a21
+			 6c77fa8ef539e1f5ac8ec347b22e4841c049faca0d99faa024f46cfe2765ec80
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 4645a4bb0d78da07c8dba1edc2769382a94dc3d8fbdd48e105a5c8dd20170e21
-			 0dbf82f8c24140f17fda36811861c9c3aa361f2256c5274a11eb4a1f183c7f3a
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 5789d8b654bc5d1552cef8e63a74e100a3db2a613015b9de03bddd55d9e4af78
+			 d515dd16ee8267fd49e03cb146c4ae2c192c5f58af0ec08f4b62b477e815628a
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 40121c3a6ec199338e7139e03e917a93290b7623334740d4d25cd1c8092f3de1
-			 c2b17cfe8b25d23b348b40e5802a4e369f691abe6ddbd4372df0d660eb100398
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 f26a9a1b2467e816c13ce2fdec22663ec9b034026690f6642b16578ac1d9e3ec
+			 2f0a32e39c231b9375006aa954aed425398488c54504f7c9bb98f37f8fb8121e
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 c5b743370ce140e95d413b20734d26ac22697b99455262cef801883f5c732019
-			 8061486273c602ac29c3e98aaa3a6d1114d16b9973e051f127e922232fef2270
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 4d6b8c87a7897ba60f5d08e5a2c56e25c29a9a95d83b23bc9e17161838c46f82
+			 89672c882e9d0f57821dd50512289887cd7aeb47cacd48f446a3e368930f4d7d
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi

From 1bf10de1f03dc07f1755489611c6f20eb67c7d6b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 13/17] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 53 ++++------
 3 files changed, 17 insertions(+), 164 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..12757850051 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,25 +1,25 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
-makedepends="libcurl-devel libgit2-devel"
+makedepends="libcurl-devel"
 depends="rust"
 short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
+if [ -z "$build_option_static" ]; then
+	makedepends+=" libgit2-devel"
+fi
+
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" cargo"
 	makedepends+=" rust"
@@ -27,7 +27,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -50,27 +50,27 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi
@@ -80,25 +80,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +97,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From b9755f8ac693b1b4033f856069c6a5923015996a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 14/17] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From c98c2b09ebe5303b4bb13a38e19203aa75f4afb2 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 15/17] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 362fbc867d0dcbd4e74b766c9aff4ab4fb82ef98 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 16/17] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From 577af23cc434b2e0d6663a0e23031e0565b35ca6 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 17/17] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
  2020-05-04  0:09 ` [PR PATCH] [Updated] " q66
@ 2020-05-04  0:30 ` q66
  2020-05-04  0:43 ` [PR PATCH] [Updated] " q66
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  0:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 254 bytes --]

New comment by q66 on void-packages repository

https://github.com/void-linux/void-packages/pull/21594#issuecomment-623210118

Comment:
Bootstrap is segfaulting on all musl platforms, when building LLVM codegen. I suspect this is due to our using LLVM9.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
  2020-05-04  0:09 ` [PR PATCH] [Updated] " q66
  2020-05-04  0:30 ` q66
@ 2020-05-04  0:43 ` q66
  2020-05-04  0:46 ` [WIP] libgit2: update to 1.0.0, " q66
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  0:43 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 572 bytes --]

There is an updated pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

[WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44
TODO:

- [x] build rust/cargo bootstrap toolchains for `ppc*`
- [ ] update rust/cargo checksums for non-ppc architectures
- [x] check/fix static cargo
- [x] test building julia
- [ ] build firefox

A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 35090 bytes --]

From dd7c67eac9f70a3bb3a034a83bb4f914d3ae2175 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/16] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index 060d736457d..3706284a32f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From fb73c73e0b44cb976be27b94b9957969497db90b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/16] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From 182b7890c97373bfb600fcf0f1ddaa93c47f0d01 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/16] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From 6344c80e0389531215d741572053d3628074a72e Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/16] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From f1b0c81fef91bac7b00a7164bbcefba0a4f8eb89 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/16] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From 94e13f44aef967088ce22f3949ac1de37c509595 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/16] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 54f741d41e28595715805de3e8f2409ee8d6df16 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/16] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 102765c7c24fd20a669bb19364dda01775837c58 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/16] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 5af4055fd10e1b9aee94f06f777698744a7739ea Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/16] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From 142c7bb8cc1bb5a8c4f04dbfd46aa552d50092cd Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/16] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From c53fc9429168d3d21d48919e5aa5a401d26ef447 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/16] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 3e6247a5dee..d65162339bc 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.1.0
-revision=25
+revision=26
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From 33fd780ae15a3b28a9b0b4a0642b2656d849bf76 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 12/16] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 53 ++++------
 3 files changed, 17 insertions(+), 164 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..12757850051 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,25 +1,25 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
-makedepends="libcurl-devel libgit2-devel"
+makedepends="libcurl-devel"
 depends="rust"
 short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
+if [ -z "$build_option_static" ]; then
+	makedepends+=" libgit2-devel"
+fi
+
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" cargo"
 	makedepends+=" rust"
@@ -27,7 +27,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -50,27 +50,27 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi
@@ -80,25 +80,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +97,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From 8e1f2f9d483d8807fe988dda059d7221192c172b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 13/16] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From 680625c108d438fb043dc24aba40c9bc31f0ed40 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 14/16] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 2f446e775b4075fe44bfda39426f717e46737630 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 15/16] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From cb401dc03edd6eea52963b78c6f57349bb102781 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 16/16] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [WIP] libgit2: update to 1.0.0, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
                   ` (2 preceding siblings ...)
  2020-05-04  0:43 ` [PR PATCH] [Updated] " q66
@ 2020-05-04  0:46 ` q66
  2020-05-04  1:55 ` [PR PATCH] [Updated] " q66
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  0:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 294 bytes --]

New comment by q66 on void-packages repository

https://github.com/void-linux/void-packages/pull/21594#issuecomment-623213166

Comment:
New plan: only cargo will be updated for the time being, because that's needed for the libgit2 update; rust will stay as is until we have updated to LLVM 10.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] libgit2: update to 1.0.0, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
                   ` (3 preceding siblings ...)
  2020-05-04  0:46 ` [WIP] libgit2: update to 1.0.0, " q66
@ 2020-05-04  1:55 ` q66
  2020-05-04  2:04 ` q66
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  1:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

[WIP] libgit2: update to 1.0.0, cargo: update to 0.44
TODO:

- [x] build cargo bootstrap toolchains for `ppc*`
- [ ] update cargo checksums for non-ppc architectures
- [x] check/fix static cargo
- [x] test building julia

A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 35088 bytes --]

From f4a00dd09788c1712c988d80d1590d02b826c39f Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/16] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index acc92a8ae8d..034881cefac 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From 3b64bb38b89084e7011cfa46755846691b43d54c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/16] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From ebd0c5caecef8069d6fbbd3fd2b38aacb67766da Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/16] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From e36f524a8623071c1549962f776a3444b9056ef3 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/16] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From 957d4651d330ffb91c5caccec4458310a3f9070d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/16] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From c217fbc66e6ccd454c9b2693625406efb65aba9a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/16] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 5eda22257c4c8fdb5f9a12bb4b81d809d2a80317 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/16] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 7e7aacece7b894398e12cb6f9d4a0d4adcde582c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/16] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 2576007c9bba78af956fe38a71f4e67e0cbd1232 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/16] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From c2afc35bff3bbce59dd8beb840319e4cac2e9a32 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/16] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From b5ab62c333d82ae456bb22a4d5c6f13437fc8aee Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/16] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 94a26744fed..bb622d8e657 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.2.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From e4558ea64c87b75dc1e6c301930868566564f7b1 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 12/16] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 53 ++++------
 3 files changed, 17 insertions(+), 164 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..12757850051 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,25 +1,25 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
-makedepends="libcurl-devel libgit2-devel"
+makedepends="libcurl-devel"
 depends="rust"
 short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
+if [ -z "$build_option_static" ]; then
+	makedepends+=" libgit2-devel"
+fi
+
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" cargo"
 	makedepends+=" rust"
@@ -27,7 +27,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -50,27 +50,27 @@ else
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi
@@ -80,25 +80,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +97,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From 8d529751a4d865ba97b039184b7894fd21297288 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 13/16] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From c434ddfa2ccde3c7711868f29e76af230ec62970 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 14/16] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 80e49981c4731f66751e64de941d9332f2eba267 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 15/16] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From b5799c32a2dd276f9dbc0819a7afb508db6247cd Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 16/16] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] libgit2: update to 1.0.0, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
                   ` (4 preceding siblings ...)
  2020-05-04  1:55 ` [PR PATCH] [Updated] " q66
@ 2020-05-04  2:04 ` q66
  2020-05-04 14:14 ` [PR PATCH] [Updated] " q66
  2020-05-04 14:18 ` [PR PATCH] [Merged]: " q66
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04  2:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

[WIP] libgit2: update to 1.0.0, cargo: update to 0.44
TODO:

- [x] build cargo bootstrap toolchains for `ppc*`
- [ ] update cargo checksums for non-ppc architectures
- [x] check/fix static cargo
- [x] test building julia

A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 35640 bytes --]

From f4a00dd09788c1712c988d80d1590d02b826c39f Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/16] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index acc92a8ae8d..034881cefac 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From 3b64bb38b89084e7011cfa46755846691b43d54c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/16] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From ebd0c5caecef8069d6fbbd3fd2b38aacb67766da Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/16] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From e36f524a8623071c1549962f776a3444b9056ef3 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/16] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From 957d4651d330ffb91c5caccec4458310a3f9070d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/16] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From c217fbc66e6ccd454c9b2693625406efb65aba9a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/16] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 5eda22257c4c8fdb5f9a12bb4b81d809d2a80317 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/16] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 7e7aacece7b894398e12cb6f9d4a0d4adcde582c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/16] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 2576007c9bba78af956fe38a71f4e67e0cbd1232 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/16] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From c2afc35bff3bbce59dd8beb840319e4cac2e9a32 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/16] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From b5ab62c333d82ae456bb22a4d5c6f13437fc8aee Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/16] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 94a26744fed..bb622d8e657 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.2.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From 3261b7a99a836593a6cf672ff32a0390d28e0c5a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 12/16] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 59 ++++--------
 3 files changed, 20 insertions(+), 167 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..52c80a19f47 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,25 +1,25 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
-makedepends="libcurl-devel libgit2-devel"
+makedepends="libcurl-devel"
 depends="rust"
 short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
+if [ -z "$build_option_static" ]; then
+	makedepends+=" libgit2-devel"
+fi
+
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" cargo"
 	makedepends+=" rust"
@@ -27,7 +27,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -38,39 +38,39 @@ else
 	case "$XBPS_MACHINE" in
 		i686)
 			checksum+="
-			 c48bc132f4025ff39b1b6dc52aef9d406c3f926ce05fe92d943ceab7a5fd6058"
+			 b60abb4d89f645ec80f83f1514758c6f374e0d86ba44d9d36966aa4262eae5e5"
 			;;
 		x86_64)
 			checksum+="
-			 9b6ae643fa240c5ecbc1dc390f4020b6a683f25bac6f7437ebd4b9d32a8d0b6c"
+			 b0b97b21aae588dd7c73508dcd14ae094f45d5c5b33299859adde1b2e241271c"
 			;;
 		x86_64-musl)
 			checksum+="
-			 848646326474392bdac70a5bfa06efda4c36e2bbbf088f07456f98c7575844e1"
+			 ba6da59754bc113eb61bcfdb384ef3b458a16fe212124252830d83968480a07b"
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi
@@ -80,25 +80,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +97,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From 8cf4df95c0436f625038079d9a355a6eea3cb49b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 13/16] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From a2619b1d1f43d9ce6462d3c48cf46cc93b64f12a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 14/16] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 9d87b631a7026a2770725f6a46ffdfaa2db20c58 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 15/16] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From 8976ab0f285ae1b317663be20474c1f76035b9dc Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 16/16] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] libgit2: update to 1.0.0, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
                   ` (5 preceding siblings ...)
  2020-05-04  2:04 ` q66
@ 2020-05-04 14:14 ` q66
  2020-05-04 14:18 ` [PR PATCH] [Merged]: " q66
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04 14:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 574 bytes --]

There is an updated pull request by q66 against master on the void-packages repository

https://github.com/void-ppc/void-packages rust143-libgit1
https://github.com/void-linux/void-packages/pull/21594

libgit2: update to 1.0.0, cargo: update to 0.44
TODO:

- [x] build cargo bootstrap toolchains for `ppc*`
- [ ] mirror bootstrap toolchains in the distfiles location
- [x] update cargo checksums for non-ppc architectures
- [x] check/fix static cargo
- [x] test building julia

A patch file from https://github.com/void-linux/void-packages/pull/21594.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rust143-libgit1-21594.patch --]
[-- Type: text/x-diff, Size: 36370 bytes --]

From f4a00dd09788c1712c988d80d1590d02b826c39f Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:54:47 +0200
Subject: [PATCH 01/17] libgit2: update to 1.0.0

---
 common/build-helper/rust.sh |  3 ---
 common/shlibs               |  2 +-
 srcpkgs/libgit2/template    | 16 ++++------------
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/build-helper/rust.sh b/common/build-helper/rust.sh
index bf6baa7fd93..cc4de30bc3a 100644
--- a/common/build-helper/rust.sh
+++ b/common/build-helper/rust.sh
@@ -24,9 +24,6 @@ fi
 # For cross-compiling rust -sys crates
 export PKG_CONFIG_ALLOW_CROSS=1
 
-# libgit2-sys
-export LIBGIT2_SYS_USE_PKG_CONFIG=1
-
 # gettext-rs
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
diff --git a/common/shlibs b/common/shlibs
index acc92a8ae8d..034881cefac 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1306,7 +1306,7 @@ libunwind-ppc64.so.8 libunwind-1.2.1_1
 libunwind-setjmp.so.0 libunwind-1.4_1
 libmicrohttpd.so.12 libmicrohttpd-0.9.48_1
 libmicrodns.so.0 libmicrodns-0.1.0_1
-libgit2.so.28 libgit2-0.28.0_1
+libgit2.so.1.0 libgit2-1.0.0_1
 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1
 libagg.so.2 agg-2.5_1
 libzzip-0.so.13 zziplib-0.13.62_1
diff --git a/srcpkgs/libgit2/template b/srcpkgs/libgit2/template
index 7a8247c212b..f9f3cd47425 100644
--- a/srcpkgs/libgit2/template
+++ b/srcpkgs/libgit2/template
@@ -1,24 +1,16 @@
 # Template file for 'libgit2'
 pkgname=libgit2
-version=0.28.4
+version=1.0.0
 revision=1
 build_style=cmake
-configure_args="-DTHREADSAFE=ON"
 hostmakedepends="python3 git pkg-config"
-makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel libuv-devel"
+makedepends="zlib-devel libressl-devel http-parser-devel libssh2-devel"
 short_desc="Git linkable library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="q66 <daniel@octaforge.org>"
 license="custom:GPL-2.0-or-later WITH GCC-exception-2.0"
 homepage="https://libgit2.org"
 distfiles="https://github.com/libgit2/libgit2/archive/v${version}.tar.gz"
-checksum=30f3877469d09f2e4a21be933b4e2800560d16646028dd800744dc5f7fb0c749
-
-case "$XBPS_TARGET_MACHINE" in
-	*-musl)
-		# Don't use qsort_r, see src/util.c
-		CFLAGS="-D__ANDROID_API__"
-		;;
-esac
+checksum=6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4
 
 post_install() {
 	vlicense COPYING

From 3b64bb38b89084e7011cfa46755846691b43d54c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:09:10 +0200
Subject: [PATCH 02/17] Fritzing: rebuild for libgit2-1.0.0

---
 srcpkgs/Fritzing/patches/libgit2.patch | 3 ++-
 srcpkgs/Fritzing/template              | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/Fritzing/patches/libgit2.patch b/srcpkgs/Fritzing/patches/libgit2.patch
index dd11447f187..2692ae065ef 100644
--- a/srcpkgs/Fritzing/patches/libgit2.patch
+++ b/srcpkgs/Fritzing/patches/libgit2.patch
@@ -1,5 +1,6 @@
 make compatible with libgit2 >= 0.24.0
 https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af907ff824ef
+https://github.com/fritzing/fritzing-app/commit/472951243d70eeb40a53b1f7e16e6eab0588d079
 
 --- src/version/partschecker.cpp.orig	2016-06-01 21:48:27.000000000 +0200
 +++ src/version/partschecker.cpp	2018-01-13 11:30:34.895137270 +0100
@@ -7,7 +8,7 @@ https://github.com/fritzing/fritzing-app/commit/4cb5185d464bf98e9da5ceca72d5af90
      /**
       * Connect to the remote.
       */
-+#if LIBGIT2_VER_MINOR > 24
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR > 24)
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL);
 +#elif LIBGIT2_VER_MINOR == 24
 +    error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL);
diff --git a/srcpkgs/Fritzing/template b/srcpkgs/Fritzing/template
index 6c624ff5f23..ea09c1b8d44 100644
--- a/srcpkgs/Fritzing/template
+++ b/srcpkgs/Fritzing/template
@@ -1,7 +1,7 @@
 # Template file for 'Fritzing'
 pkgname=Fritzing
 version=0.9.3b
-revision=4
+revision=5
 _partshash=359eb1933622e4c4fa456ad043543681984a4d64 # 2018-03-14
 wrksrc="fritzing-app-${version}"
 build_style=qmake

From ebd0c5caecef8069d6fbbd3fd2b38aacb67766da Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:13:13 +0200
Subject: [PATCH 03/17] captain-ballard: rebuild for libgit2-1.0.0

---
 srcpkgs/captain-ballard/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/captain-ballard/template b/srcpkgs/captain-ballard/template
index f5e7fe87c5b..a44227d95e0 100644
--- a/srcpkgs/captain-ballard/template
+++ b/srcpkgs/captain-ballard/template
@@ -1,7 +1,7 @@
 # Template file for 'captain-ballard'
 pkgname=captain-ballard
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="pkg-config glib-devel"
 makedepends="gtk+3-devel sqlite-devel libappindicator-devel libgit2-devel"

From e36f524a8623071c1549962f776a3444b9056ef3 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:21:16 +0200
Subject: [PATCH 04/17] libgit2-glib: rebuild for libgit2-1.0.0

---
 .../libgit2-glib/patches/libgit2-1.0.patch    | 156 ++++++++++++++++++
 srcpkgs/libgit2-glib/template                 |   2 +-
 2 files changed, 157 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libgit2-glib/patches/libgit2-1.0.patch

diff --git a/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..183be9909b8
--- /dev/null
+++ b/srcpkgs/libgit2-glib/patches/libgit2-1.0.patch
@@ -0,0 +1,156 @@
+commit bcbd4b6c84779413162f1e7fdd2a4a5329fef04a
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:27:40 2020 +0200
+
+    libgit2 1.0 build fix
+
+diff --git libgit2-glib/ggit-clone-options.c libgit2-glib/ggit-clone-options.c
+index 5e69eec..b47fdb1 100644
+--- libgit2-glib/ggit-clone-options.c
++++ libgit2-glib/ggit-clone-options.c
+@@ -149,7 +149,7 @@ create_repository_wrapper (git_repository **out,
+ 
+ 	if (error != NULL)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+@@ -191,7 +191,7 @@ create_remote_wrapper (git_remote     **out,
+ 
+ 	if (error)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 		giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-config.c libgit2-glib/ggit-config.c
+index 626f7f0..58c2bbe 100644
+--- libgit2-glib/ggit-config.c
++++ libgit2-glib/ggit-config.c
+@@ -191,7 +191,7 @@ ggit_config_find_global (void)
+ 	if (git_config_find_global (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -224,7 +224,7 @@ ggit_config_find_system (void)
+ 	if (git_config_find_system (&buf) == GIT_OK)
+ 	{
+ 		path = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -303,9 +303,7 @@ ggit_config_add_file (GgitConfig      *config,
+ 	ret = git_config_add_file_ondisk (_ggit_native_get (config),
+ 	                                  path,
+ 	                                  (git_config_level_t)level,
+-#if LIBGIT2_SOVERSION >= 27
+ 	                                  NULL,
+-#endif
+ 	                                  force);
+ 	g_free (path);
+ 
+diff --git libgit2-glib/ggit-diff.c libgit2-glib/ggit-diff.c
+index 43fa6cf..5189724 100644
+--- libgit2-glib/ggit-diff.c
++++ libgit2-glib/ggit-diff.c
+@@ -786,7 +786,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 
+ 	if (ret != GIT_OK)
+ 	{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -796,7 +796,7 @@ ggit_diff_format_email (GgitDiff                    *diff,
+ 	}
+ 
+ 	retval = g_strndup (buf.ptr, buf.size);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-error.c libgit2-glib/ggit-error.c
+index 9247064..dbdaf4e 100644
+--- libgit2-glib/ggit-error.c
++++ libgit2-glib/ggit-error.c
+@@ -51,7 +51,7 @@ _ggit_error_set (GError **error,
+ 	g_return_if_fail (err < 0);
+ 
+ 	/* TODO: add more kind of errors, see git_error_t */
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git2_err = git_error_last ();
+ #else
+ 	git2_err = giterr_last ();
+diff --git libgit2-glib/ggit-message.c libgit2-glib/ggit-message.c
+index 7bd6983..4d1b1b8 100644
+--- libgit2-glib/ggit-message.c
++++ libgit2-glib/ggit-message.c
+@@ -46,7 +46,7 @@ ggit_message_prettify (const gchar *message,
+ 	git_message_prettify (&buf, message, strip_comments, comment_char);
+ 
+ 	d = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
+diff --git libgit2-glib/ggit-patch.c libgit2-glib/ggit-patch.c
+index cd35be7..b544591 100644
+--- libgit2-glib/ggit-patch.c
++++ libgit2-glib/ggit-patch.c
+@@ -194,7 +194,7 @@ ggit_patch_to_string (GgitPatch  *patch,
+ 	if (ret == GIT_OK)
+ 	{
+ 		result = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+diff --git libgit2-glib/ggit-remote-callbacks.c libgit2-glib/ggit-remote-callbacks.c
+index 7956f8b..a1e7b7d 100644
+--- libgit2-glib/ggit-remote-callbacks.c
++++ libgit2-glib/ggit-remote-callbacks.c
+@@ -160,7 +160,7 @@ credentials_wrap (git_cred     **cred,
+ 		{
+ 			if (error)
+ 			{
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 				git_error_set_str (GIT_ERROR, error->message);
+ #else
+ 				giterr_set_str (GIT_ERROR, error->message);
+diff --git libgit2-glib/ggit-repository.c libgit2-glib/ggit-repository.c
+index 42490f4..dd9c7d6 100644
+--- libgit2-glib/ggit-repository.c
++++ libgit2-glib/ggit-repository.c
+@@ -1013,7 +1013,7 @@ ggit_repository_discover_full (GFile        *location,
+ 	if (ret == GIT_OK)
+ 	{
+ 		rep = g_file_new_for_path (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 		git_buf_dispose (&buf);
+ #else
+ 		git_buf_free (&buf);
+@@ -3684,7 +3684,7 @@ ggit_repository_get_default_notes_ref (GgitRepository  *repository,
+ 	}
+ 
+ 	ref = g_strdup (buf.ptr);
+-#if LIBGIT2_SOVERSION >= 28
++#if LIBGIT2_VER_MAJOR > 0 || (LIBGIT2_VER_MAJOR == 0 && LIBGIT2_VER_MINOR >= 28)
+ 	git_buf_dispose (&buf);
+ #else
+ 	git_buf_free (&buf);
diff --git a/srcpkgs/libgit2-glib/template b/srcpkgs/libgit2-glib/template
index ce68cb35d66..89551f7b75d 100644
--- a/srcpkgs/libgit2-glib/template
+++ b/srcpkgs/libgit2-glib/template
@@ -1,7 +1,7 @@
 # Template file for 'libgit2-glib'
 pkgname=libgit2-glib
 version=0.28.0.1
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)

From 957d4651d330ffb91c5caccec4458310a3f9070d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:31:46 +0200
Subject: [PATCH 05/17] stagit: rebuild for libgit2-1.0.0

---
 srcpkgs/stagit/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/stagit/template b/srcpkgs/stagit/template
index cbb95edeb5d..e9aa9dd7bc7 100644
--- a/srcpkgs/stagit/template
+++ b/srcpkgs/stagit/template
@@ -1,7 +1,7 @@
 # Template file for 'stagit'
 pkgname=stagit
 version=0.9.3
-revision=1
+revision=2
 build_style=gnu-makefile
 make_install_args="MANPREFIX=/usr/share/man"
 makedepends="libgit2-devel"

From c217fbc66e6ccd454c9b2693625406efb65aba9a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:32:28 +0200
Subject: [PATCH 06/17] geany-plugins: rebuild for libgit2-1.0.0

---
 .../geany-plugins/patches/libgit2-1.0.patch   | 54 +++++++++++++++++++
 srcpkgs/geany-plugins/template                |  2 +-
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/geany-plugins/patches/libgit2-1.0.patch

diff --git a/srcpkgs/geany-plugins/patches/libgit2-1.0.patch b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
new file mode 100644
index 00000000000..2cd070e1041
--- /dev/null
+++ b/srcpkgs/geany-plugins/patches/libgit2-1.0.patch
@@ -0,0 +1,54 @@
+commit c5840bc94d5870b2f8b38ea16853e0c2dd0ac981
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:36:54 2020 +0200
+
+    fix build on libgit2-1.0
+
+diff --git git-changebar/src/gcb-plugin.c git-changebar/src/gcb-plugin.c
+index b708319..8d3abaf 100644
+--- git-changebar/src/gcb-plugin.c
++++ git-changebar/src/gcb-plugin.c
+@@ -32,25 +32,6 @@
+ #include <geany.h>
+ #include <document.h>
+ 
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 23
+-/* 0.23 added @p binary_cb */
+-# define git_diff_buffers(old_buffer, old_len, old_as_path, \
+-                          new_buffer, new_len, new_as_path, options, \
+-                          file_cb, binary_cb, hunk_cb, line_cb, payload) \
+-  git_diff_buffers (old_buffer, old_len, old_as_path, \
+-                    new_buffer, new_len, new_as_path, options, \
+-                    file_cb, hunk_cb, line_cb, payload)
+-#endif
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 28
+-# define git_buf_dispose  git_buf_free
+-# define git_error_last   giterr_last
+-#endif
+-
+-
+ GeanyPlugin      *geany_plugin;
+ GeanyData        *geany_data;
+ 
+diff --git workbench/src/plugin_main.c workbench/src/plugin_main.c
+index 6fa6fc8..b620666 100644
+--- workbench/src/plugin_main.c
++++ workbench/src/plugin_main.c
+@@ -35,13 +35,6 @@
+ #include "idle_queue.h"
+ #include "tm_control.h"
+ 
+-
+-#if ! defined (LIBGIT2_SOVERSION) || LIBGIT2_SOVERSION < 22
+-# define git_libgit2_init     git_threads_init
+-# define git_libgit2_shutdown git_threads_shutdown
+-#endif
+-
+-
+ GeanyPlugin *geany_plugin;
+ GeanyData *geany_data;
+ 
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index 7047183241d..8af71c85368 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,7 +1,7 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
 version=1.36.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="PYTHON=/usr/bin/python2 --enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"

From 5eda22257c4c8fdb5f9a12bb4b81d809d2a80317 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:42:50 +0200
Subject: [PATCH 07/17] slcp: rebuild for libgit2-1.0.0

---
 srcpkgs/slcp/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/slcp/template b/srcpkgs/slcp/template
index 6f3d4f7a946..1873bcc6f23 100644
--- a/srcpkgs/slcp/template
+++ b/srcpkgs/slcp/template
@@ -1,7 +1,7 @@
 # Template file for 'slcp'
 pkgname=slcp
 version=0.2
-revision=11
+revision=12
 build_style=gnu-makefile
 makedepends="libgit2-devel"
 short_desc="Simple shell prompt written in C"

From 7e7aacece7b894398e12cb6f9d4a0d4adcde582c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:44:01 +0200
Subject: [PATCH 08/17] ktexteditor: rebuild against libgit2-1.0.0

---
 srcpkgs/ktexteditor/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ktexteditor/template b/srcpkgs/ktexteditor/template
index 58bf818a74d..6578a855e22 100644
--- a/srcpkgs/ktexteditor/template
+++ b/srcpkgs/ktexteditor/template
@@ -1,7 +1,7 @@
 # Template file for 'ktexteditor'
 pkgname=ktexteditor
 version=5.69.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF
  -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 2576007c9bba78af956fe38a71f4e67e0cbd1232 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:47:07 +0200
Subject: [PATCH 09/17] juCi++: rebuild against libgit2-1.0.0

---
 srcpkgs/juCi++/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/juCi++/template b/srcpkgs/juCi++/template
index 9decdd72538..73fa7d8b265 100644
--- a/srcpkgs/juCi++/template
+++ b/srcpkgs/juCi++/template
@@ -1,7 +1,7 @@
 # Template file for 'juCi++'
 pkgname=juCi++
 version=1.5.0
-revision=3
+revision=4
 _libclangmm_commit="687b9c231d850504ec515acb9ccab73f26c34063"
 _tiny_commit="a6773276efdbc322f1abb0159301f5502647eb52"
 wrksrc="jucipp-v${version}"

From c2afc35bff3bbce59dd8beb840319e4cac2e9a32 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 19:50:17 +0200
Subject: [PATCH 10/17] gnome-builder: rebuild against libgit2-1.0.0

---
 .../gnome-builder/patches/libgit2-1.0.0.patch | 22 +++++++++++++++++++
 srcpkgs/gnome-builder/template                |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch

diff --git a/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
new file mode 100644
index 00000000000..7b9b4a2bf1a
--- /dev/null
+++ b/srcpkgs/gnome-builder/patches/libgit2-1.0.0.patch
@@ -0,0 +1,22 @@
+commit 44136a2e5c52623b0e62c38846f511f307615ce2
+Author: q66 <daniel@octaforge.org>
+Date:   Sun May 3 19:52:09 2020 +0200
+
+    fix build with libgit2-1.0.0
+
+diff --git a/src/plugins/git/daemon/ipc-git-repository-impl.c b/src/plugins/git/daemon/ipc-git-repository-impl.c
+index 7f01042..2ccc4df 100644
+--- a/src/plugins/git/daemon/ipc-git-repository-impl.c
++++ b/src/plugins/git/daemon/ipc-git-repository-impl.c
+@@ -33,11 +33,7 @@
+ #include "ipc-git-types.h"
+ #include "ipc-git-util.h"
+ 
+-#if LIBGIT2_SOVERSION >= 28
+ G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_dispose)
+-#else
+-G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (git_buf, git_buf_free)
+-#endif
+ 
+ typedef enum
+ {
diff --git a/srcpkgs/gnome-builder/template b/srcpkgs/gnome-builder/template
index d4f612b46f7..9d715064a19 100644
--- a/srcpkgs/gnome-builder/template
+++ b/srcpkgs/gnome-builder/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-builder'
 pkgname=gnome-builder
 version=3.34.1
-revision=2
+revision=3
 build_style=meson
 configure_args="-Dwith_webkit=true -Dwith_sysprof=true -Dhelp=true"
 hostmakedepends="pkg-config appdata-tools desktop-file-utils flex gobject-introspection
- gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme"
+ gspell-devel llvm mm-common vala python3-Sphinx python3-sphinx_rtd_theme gettext"
 makedepends="cairo-devel clang devhelp-devel enchant2-devel flatpak-devel
  gspell-devel gtksourceview4-devel gtk+3-devel json-glib-devel jsonrpc-glib-devel
  libdazzle-devel libgit2-glib-devel libglib-devel libostree-devel libpeas-devel

From b5ab62c333d82ae456bb22a4d5c6f13437fc8aee Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:00:42 +0200
Subject: [PATCH 11/17] calligra: rebuild against libgit2-1.0.0

---
 srcpkgs/calligra/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template
index 94a26744fed..bb622d8e657 100644
--- a/srcpkgs/calligra/template
+++ b/srcpkgs/calligra/template
@@ -1,7 +1,7 @@
 # Template file for 'calligra'
 pkgname=calligra
 version=3.2.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON
  -DBUILD_TESTING=OFF"

From 3261b7a99a836593a6cf672ff32a0390d28e0c5a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:39:30 +0200
Subject: [PATCH 12/17] cargo: update to 0.44.0

The libgit2-sys crate now requires 1.0.0 via pkg-config and
dropped the env var usage, so just default to that.
---
 .../patches/fix-cross-sysroot-libdir.patch    | 96 -------------------
 .../patches/revert-libgit2-sys-api.patch      | 32 -------
 srcpkgs/cargo/template                        | 59 ++++--------
 3 files changed, 20 insertions(+), 167 deletions(-)
 delete mode 100644 srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
 delete mode 100644 srcpkgs/cargo/patches/revert-libgit2-sys-api.patch

diff --git a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch b/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
deleted file mode 100644
index a20ced2fee6..00000000000
--- a/srcpkgs/cargo/patches/fix-cross-sysroot-libdir.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 647ae9f8a7f9907244a8c86bceb383cbf61eb505 Mon Sep 17 00:00:00 2001
-From: Johannes Brechtmann <johannes@jnbr.me>
-Date: Fri, 27 Dec 2019 18:48:31 +0100
-Subject: [PATCH] Revert "Fix wrong directories in PATH on Windows"
-
-This reverts commit 61188d791a29c1baae868f2ba0880c9d6db4092e.
----
- .../compiler/build_context/target_info.rs     | 43 +++++++++----------
- src/cargo/core/compiler/compilation.rs        |  4 +-
- 2 files changed, 23 insertions(+), 24 deletions(-)
-
-diff --git a/src/cargo/core/compiler/build_context/target_info.rs b/src/cargo/core/compiler/build_context/target_info.rs
-index 3c23d2d8b..d6e5e66f8 100644
---- src/cargo/core/compiler/build_context/target_info.rs
-+++ src/cargo/core/compiler/build_context/target_info.rs
-@@ -29,12 +29,8 @@ pub struct TargetInfo {
-     crate_types: RefCell<HashMap<String, Option<(String, String)>>>,
-     /// `cfg` information extracted from `rustc --print=cfg`.
-     cfg: Vec<Cfg>,
--    /// Path to the "lib" or "bin" directory that rustc uses for its dynamic
--    /// libraries.
--    pub sysroot_host_libdir: PathBuf,
--    /// Path to the "lib" directory in the sysroot which rustc uses for linking
--    /// target libraries.
--    pub sysroot_target_libdir: PathBuf,
-+    /// Path to the "lib" directory in the sysroot.
-+    pub sysroot_libdir: PathBuf,
-     /// Extra flags to pass to `rustc`, see `env_args`.
-     pub rustflags: Vec<String>,
-     /// Extra flags to pass to `rustdoc`, see `env_args`.
-@@ -134,20 +130,24 @@ impl TargetInfo {
-                 output_err_info(&process, &output, &error)
-             ),
-         };
--        let mut sysroot_host_libdir = PathBuf::from(line);
--        if cfg!(windows) {
--            sysroot_host_libdir.push("bin");
--        } else {
--            sysroot_host_libdir.push("lib");
--        }
--        let mut sysroot_target_libdir = PathBuf::from(line);
--        sysroot_target_libdir.push("lib");
--        sysroot_target_libdir.push("rustlib");
--        sysroot_target_libdir.push(match &kind {
--            CompileKind::Host => rustc.host.as_str(),
--            CompileKind::Target(target) => target.short_name(),
--        });
--        sysroot_target_libdir.push("lib");
-+        let mut rustlib = PathBuf::from(line);
-+        let sysroot_libdir = match kind {
-+            CompileKind::Host => {
-+                if cfg!(windows) {
-+                    rustlib.push("bin");
-+                } else {
-+                    rustlib.push("lib");
-+                }
-+                rustlib
-+            }
-+            CompileKind::Target(target) => {
-+                rustlib.push("lib");
-+                rustlib.push("rustlib");
-+                rustlib.push(target.short_name());
-+                rustlib.push("lib");
-+                rustlib
-+            }
-+        };
- 
-         let cfg = lines
-             .map(|line| Ok(Cfg::from_str(line)?))
-@@ -162,8 +162,7 @@ impl TargetInfo {
-         Ok(TargetInfo {
-             crate_type_process,
-             crate_types: RefCell::new(map),
--            sysroot_host_libdir,
--            sysroot_target_libdir,
-+            sysroot_libdir,
-             // recalculate `rustflags` from above now that we have `cfg`
-             // information
-             rustflags: env_args(
-diff --git a/src/cargo/core/compiler/compilation.rs b/src/cargo/core/compiler/compilation.rs
-index 140a024b1..86afe35ac 100644
---- src/cargo/core/compiler/compilation.rs
-+++ src/cargo/core/compiler/compilation.rs
-@@ -101,8 +101,8 @@ impl<'cfg> Compilation<'cfg> {
-             root_output: PathBuf::from("/"),
-             deps_output: PathBuf::from("/"),
-             host_deps_output: PathBuf::from("/"),
--            host_dylib_path: bcx.info(default_kind).sysroot_host_libdir.clone(),
--            target_dylib_path: bcx.info(default_kind).sysroot_target_libdir.clone(),
-+            host_dylib_path: bcx.info(CompileKind::Host).sysroot_libdir.clone(),
-+            target_dylib_path: bcx.info(default_kind).sysroot_libdir.clone(),
-             tests: Vec::new(),
-             binaries: Vec::new(),
-             extra_env: HashMap::new(),
--- 
-2.24.1
\ No newline at end of file
diff --git a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch b/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
deleted file mode 100644
index b2f819286ba..00000000000
--- a/srcpkgs/cargo/patches/revert-libgit2-sys-api.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Source: FreeBSD
-
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- libgit2-sys/lib.rs
-+++ libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
-     pub push_negotiation: Option<git_push_negotiation>,
-     pub transport: Option<git_transport_cb>,
-     pub payload: *mut c_void,
--    pub resolve_url: Option<git_url_resolve_cb>,
- }
- 
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
- 
- pub type git_push_update_reference_cb =
-     extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
--    extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
- 
- #[repr(C)]
- pub struct git_push_update {
-@@ -2233,7 +2230,7 @@ extern "C" {
-         source: *const git_tree,
-     ) -> c_int;
-     pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
--    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+    pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
-     pub fn git_treebuilder_free(bld: *mut git_treebuilder);
-     pub fn git_treebuilder_get(
-         bld: *mut git_treebuilder,
diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index eea0843d147..52c80a19f47 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -1,25 +1,25 @@
 # Template file for 'cargo'
 pkgname=cargo
-version=0.42.0
-revision=2
+version=0.44.0
+revision=1
 wrksrc="cargo-${version}"
 build_helper=rust
 hostmakedepends="rust python curl cmake pkg-config"
-makedepends="libcurl-devel libgit2-devel"
+makedepends="libcurl-devel"
 depends="rust"
 short_desc="Rust package manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT, Apache-2.0"
 homepage="https://crates.io/"
-_libgit2_ver=0.9.2
-_git2_ver=0.10.2
-distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz
- https://github.com/rust-lang/git2-rs/archive/libgit2-sys-${_libgit2_ver}.tar.gz"
-checksum="22e60eca84d0f146ef45534e592b1c829a0cdf23452c2a23d2cde40d6c793b8a
- 61e1329785a2957721b28ec7d13c22749553f67179d7dde8e5793c4872eec48a"
-_cargo_dist_version=0.41.0
+distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
+checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
+_cargo_dist_version=0.44.0
 build_options="static"
 
+if [ -z "$build_option_static" ]; then
+	makedepends+=" libgit2-devel"
+fi
+
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" cargo"
 	makedepends+=" rust"
@@ -27,7 +27,7 @@ else
 	_bootstrap_url="https://static.rust-lang.org/dist"
 
 	case "$XBPS_MACHINE" in
-		x86_64*|i686|ppc64le|ppc) ;;
+		x86_64*|i686|ppc64le) ;;
 		ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;;
 		*) broken="unsupported host: ${XBPS_MACHINE}" ;;
 	esac
@@ -38,39 +38,39 @@ else
 	case "$XBPS_MACHINE" in
 		i686)
 			checksum+="
-			 c48bc132f4025ff39b1b6dc52aef9d406c3f926ce05fe92d943ceab7a5fd6058"
+			 b60abb4d89f645ec80f83f1514758c6f374e0d86ba44d9d36966aa4262eae5e5"
 			;;
 		x86_64)
 			checksum+="
-			 9b6ae643fa240c5ecbc1dc390f4020b6a683f25bac6f7437ebd4b9d32a8d0b6c"
+			 b0b97b21aae588dd7c73508dcd14ae094f45d5c5b33299859adde1b2e241271c"
 			;;
 		x86_64-musl)
 			checksum+="
-			 848646326474392bdac70a5bfa06efda4c36e2bbbf088f07456f98c7575844e1"
+			 ba6da59754bc113eb61bcfdb384ef3b458a16fe212124252830d83968480a07b"
 			;;
 		ppc64le)
 			checksum+="
-			 7705f21d938a72ba6f01818661b2dea29183209940a335f18d1761e1e03d3710"
+			 4f90cd6cbcf9e9d6ba11830e093092e4e6c3d156ffde2e729933869b7a039ff9"
 			;;
 		ppc64le-musl)
 			checksum+="
-			 0fbe481d284a14b84cc63ccb50caeb248200f238d2c3e449c2b8a8bf49c951ce"
+			 a85e8c9714a8bb7c17cd23993c677f51d9e0d6f5e85ab10f53ec1639b19bbbd4"
 			;;
 		ppc64)
 			checksum+="
-			 23a7967b0c1c762cdbea4f850cacbb462e386977203c0d5ff060275c526d80d7"
+			 983e2fbec9c4bfe66bab37ad64cdd5b47918378e421d9bf639e938f120650199"
 			;;
 		ppc64-musl)
 			checksum+="
-			 d5a808fdb50068a14d6578f052c9e21ae7881d4ecdcf9e098c5e2c2b1ae65786"
+			 f974893d1cac6c799345bece08c7f796eb50e1a77c4b9bc2a6451d161a57c660"
 			;;
 		ppc)
 			checksum+="
-			 295030192cf5b7e1fce75845a1961619a5f701185400ad816cf950d4e18f0646"
+			 48f4419300fe758ebe024e6449a5ca1dff07803047a815b3d3909170baa7adcc"
 			;;
 		ppc-musl)
 			checksum+="
-			 91cc5d6f0192f68d5053fb460dd8347b28cb29b4a63a6e648d6b754795b5c4e8"
+			 bbb93a757e75d09cb5f6d6dd837e32212acd8888426406352eccf52f329386f1"
 			;;
 	esac
 fi
@@ -80,25 +80,10 @@ post_extract() {
 		mkdir -p target/snapshot
 		cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
 	fi
-
-	mv ${XBPS_BUILDDIR}/git2-rs-libgit2-sys-${_libgit2_ver} .
-	mv git2-rs-libgit2-sys-${_libgit2_ver}/libgit2-sys .
-}
-
-post_patch() {
-	# but only use the patched libgit2 when not static; when static, bundled
-	# libgit2 is used and this would not work (libgit2 sources are not there)
-	if [ ! "$build_option_static" ]; then
-		cat >> Cargo.toml <<- EOF
-			[patch.crates-io]
-			libgit2-sys = { path = './libgit2-sys' }
-		EOF
-	fi
 }
 
 do_build() {
 	if [ "$build_option_static" ]; then
-		unset LIBGIT2_SYS_USE_PKG_CONFIG
 		unset LIBSSH2_SYS_USE_PKG_CONFIG
 		export OPENSSL_STATIC=1
 		# rust-openssl can not be linked static if pkg-config is used
@@ -112,10 +97,6 @@ do_build() {
 		cargo="./cargo"
 	fi
 
-	# gotta pin out libgit2-sys at the version
-	$cargo update
-	$cargo update --package git2 --precise ${_git2_ver}
-	$cargo update --package libgit2-sys --precise ${_libgit2_ver}
 	$cargo build --release $(vopt_if static --features="all-static")
 }
 

From 8cf4df95c0436f625038079d9a355a6eea3cb49b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:12:20 +0200
Subject: [PATCH 13/17] cargo-outdated: update to 0.9.9

---
 srcpkgs/cargo-outdated/template | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/cargo-outdated/template b/srcpkgs/cargo-outdated/template
index 64f5c924cbd..05e338f0c97 100644
--- a/srcpkgs/cargo-outdated/template
+++ b/srcpkgs/cargo-outdated/template
@@ -1,7 +1,7 @@
 # Template file for 'cargo-outdated'
 pkgname=cargo-outdated
-version=0.9.1
-revision=3
+version=0.9.9
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
 makedepends="libgit2-devel libressl-devel"
@@ -10,11 +10,14 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/kbknapp/cargo-outdated"
 distfiles="https://github.com/kbknapp/cargo-outdated/archive/v${version}.tar.gz"
-checksum=8c3c014d84c2bdcd894e473b1f1b929c2e498fb2b5443fa1d02104e2291497f1
+checksum=f23bb266d0f31316817e6350b4a02a91cbb6b02baa280092bbd9719ebfee31b4
+
+# remove with dependency update to cargo 0.44 or newer
+export LIBGIT2_SYS_USE_PKG_CONFIG=1
 
 pre_build() {
-	cargo update --package openssl-sys --precise 0.9.53
-	cargo update --package openssl --precise 0.10.22
+	cargo update --package openssl-sys --precise 0.9.55
+	cargo update --package openssl --precise 0.10.29
 }
 
 post_install() {

From a2619b1d1f43d9ce6462d3c48cf46cc93b64f12a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:47:18 +0200
Subject: [PATCH 14/17] starship: update to 0.41.0

---
 srcpkgs/starship/template | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/starship/template b/srcpkgs/starship/template
index fa063601fd0..7da4d8b3a9c 100644
--- a/srcpkgs/starship/template
+++ b/srcpkgs/starship/template
@@ -1,6 +1,6 @@
 # Template file for 'starship'
 pkgname=starship
-version=0.37.0
+version=0.41.0
 revision=1
 build_style=cargo
 build_helper="rust"
@@ -11,12 +11,7 @@ maintainer="Aluísio Augusto Silva Gonçalves <aluisio@aasg.name>"
 license="ISC"
 homepage="https://starship.rs"
 distfiles="https://github.com/starship/starship/archive/v${version}.tar.gz"
-checksum=9a7344a1f61f195ddee9fef794e3214d47b38c5d18dfba8d66959dff3e06403b
-
-pre_build() {
-	vsed -i '/reqwest =/s/, "rustls-tls"//' Cargo.toml
-	cargo update
-}
+checksum=420a09f77a6355bb0f272cd45be57d89265357b4e98b88e212aba7720d270fe7
 
 post_install() {
 	vlicense LICENSE

From 9d87b631a7026a2770725f6a46ffdfaa2db20c58 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:48:15 +0200
Subject: [PATCH 15/17] git-absorb: rebuild for libgit2-1.0.0

---
 srcpkgs/git-absorb/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/git-absorb/template b/srcpkgs/git-absorb/template
index 2c960726137..8cdc77eba5b 100644
--- a/srcpkgs/git-absorb/template
+++ b/srcpkgs/git-absorb/template
@@ -1,7 +1,7 @@
 # Template file for 'git-absorb'
 pkgname=git-absorb
 version=0.5.0
-revision=1
+revision=2
 build_style=cargo
 makedepends="libgit2-devel"
 short_desc="Like git commit --fixup, but automatic"
@@ -11,6 +11,12 @@ homepage="https://github.com/tummychow/git-absorb"
 distfiles="https://github.com/tummychow/git-absorb/archive/${version}.tar.gz"
 checksum=c4ef4fa28222773d695aab7711abbfac7e81c35a37eafe45f79d045516df28b1
 
+pre_build() {
+	# bump git2 version for newer libgit2-sys
+	vsed -i 's/\"~0.9\"/\"0.13.5\"/g' Cargo.toml
+	cargo update
+}
+
 post_install() {
 	vlicense LICENSE.md
 }

From 8976ab0f285ae1b317663be20474c1f76035b9dc Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 20:49:44 +0200
Subject: [PATCH 16/17] julia: rebuild for libgit2-1.0.0

[ci skip]
---
 srcpkgs/julia/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index b18dd7b4f7c..5137a3236dd 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.4.1
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

From ae67f303a82573cb7fb138ab9bfc84923e3db922 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Mon, 4 May 2020 16:14:10 +0200
Subject: [PATCH 17/17] cargo: nocross for now

[ci skip]
---
 srcpkgs/cargo/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template
index 52c80a19f47..e14a3e0f262 100644
--- a/srcpkgs/cargo/template
+++ b/srcpkgs/cargo/template
@@ -15,6 +15,7 @@ distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
 checksum="c6da7d1d21eacf112c55dc8cc2647f2ccf7b41f9865dfa542e08ab41d1c20170"
 _cargo_dist_version=0.44.0
 build_options="static"
+nocross=yes
 
 if [ -z "$build_option_static" ]; then
 	makedepends+=" libgit2-devel"

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Merged]: libgit2: update to 1.0.0, cargo: update to 0.44
  2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
                   ` (6 preceding siblings ...)
  2020-05-04 14:14 ` [PR PATCH] [Updated] " q66
@ 2020-05-04 14:18 ` q66
  7 siblings, 0 replies; 9+ messages in thread
From: q66 @ 2020-05-04 14:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 413 bytes --]

There's a merged pull request on the void-packages repository

libgit2: update to 1.0.0, cargo: update to 0.44
https://github.com/void-linux/void-packages/pull/21594

Description:
TODO:

- [x] build cargo bootstrap toolchains for `ppc*`
- [x] mirror bootstrap toolchains in the distfiles location
- [x] update cargo checksums for non-ppc architectures
- [x] check/fix static cargo
- [x] test building julia

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-05-04 14:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-03 22:29 [PR PATCH] [WIP] libgit2: update to 1.0.0, rust: update to 1.43, cargo: update to 0.44 q66
2020-05-04  0:09 ` [PR PATCH] [Updated] " q66
2020-05-04  0:30 ` q66
2020-05-04  0:43 ` [PR PATCH] [Updated] " q66
2020-05-04  0:46 ` [WIP] libgit2: update to 1.0.0, " q66
2020-05-04  1:55 ` [PR PATCH] [Updated] " q66
2020-05-04  2:04 ` q66
2020-05-04 14:14 ` [PR PATCH] [Updated] " q66
2020-05-04 14:18 ` [PR PATCH] [Merged]: " q66

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).