Github messages for voidlinux
 help / color / mirror / Atom feed
From: sgn <sgn@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] Fix qbittorrent crash on musl
Date: Sun, 11 Sep 2022 18:31:44 +0200	[thread overview]
Message-ID: <20220911163144.0EitmLlmsRsZbqbuvjbveYOLb4pFeWELgfXvQ1i7ml0@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-39154@inbox.vuxu.org>

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

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

https://github.com/ericonr/void-packages boost-fix
https://github.com/void-linux/void-packages/pull/39154

Fix qbittorrent crash on musl
- boost: fix segfault in asio+align module.
- libtorrent-rasterbar: rebuild to fix segfault.

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-boost-fix-39154.patch --]
[-- Type: text/x-diff, Size: 4860 bytes --]

From 5df7a377f7350ab70a0ec19a998d7edf66a07b26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 11 Sep 2022 23:28:08 +0700
Subject: [PATCH 1/3] boost: fix segfault in asio+align module.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Reported-by: Érico Nogueira <erico.erc@gmail.com>
---
 .../boost/patches/feature-test-macros.patch   | 32 +++++++++++++++++++
 srcpkgs/boost/template                        |  2 +-
 2 files changed, 33 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/boost/patches/feature-test-macros.patch

diff --git a/srcpkgs/boost/patches/feature-test-macros.patch b/srcpkgs/boost/patches/feature-test-macros.patch
new file mode 100644
index 000000000000..14849a248703
--- /dev/null
+++ b/srcpkgs/boost/patches/feature-test-macros.patch
@@ -0,0 +1,32 @@
+boost/align/aligned_alloc.hpp is wrong, it uses feature test macros to
+determine whether something is available;
+FTMs shouldn't be in user code outside of top level #define's.
+
+This lead to an issue on musl where libtorrent-rasterbar was including this
+header (via boost asio) from two different places, and segfaulting due to
+mismatched implementations -- one's the posix one using posix_memalign, the
+other one's the generic one that stores a pointer to itself.
+
+posix_memalign is always available on the libcs we support and should always be
+used, so we force that. We still leave applications with the option of forcing
+boost specific behavior, if they really want it.
+
+Instead of patching only boost/align/aligned_alloc.hpp, which fix the
+bug if boost::asio is used, but may keep other boost's code use feature tests
+macro, now or later, let's patch boost/config.hpp to always define
+_XOPEN_SOURCE instead.
+
+--- a/boost/config.hpp
++++ b/boost/config.hpp
+@@ -17,6 +17,11 @@
+ #ifndef BOOST_CONFIG_HPP
+ #define BOOST_CONFIG_HPP
+ 
++#ifdef __linux__
++/* for _XOPEN_SOURCE and/or _POSIX_C_SOURCE */
++#include <features.h>
++#endif
++
+ // if we don't have a user config, then use the default location:
+ #if !defined(BOOST_USER_CONFIG) && !defined(BOOST_NO_USER_CONFIG)
+ #  define BOOST_USER_CONFIG <boost/config/user.hpp>
diff --git a/srcpkgs/boost/template b/srcpkgs/boost/template
index 57ad72b545f9..e47bd7d251b5 100644
--- a/srcpkgs/boost/template
+++ b/srcpkgs/boost/template
@@ -1,7 +1,7 @@
 # Template file for 'boost'
 pkgname=boost
 version=1.80.0
-revision=1
+revision=2
 wrksrc="${pkgname}_${version//\./_}"
 hostmakedepends="which bzip2-devel icu-devel python3-devel pkg-config"
 makedepends="zlib-devel bzip2-devel icu-devel python3-devel liblzma-devel

From 7e3b1d2296479337542298abd38eecaa20a189c5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Nogueira?= <erico.erc@gmail.com>
Date: Wed, 7 Sep 2022 17:34:19 -0300
Subject: [PATCH 2/3] libtorrent-rasterbar: rebuild to fix segfault.

Since asio is a header-only library, we need to rebuild its dependents.
---
 common/shlibs                         | 2 +-
 srcpkgs/libtorrent-rasterbar/template | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index fe0fe43e281c..ae39d4551d59 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2094,7 +2094,7 @@ libldns.so.3 libldns-1.7.1_4
 libopenjpeg.so.5 libopenjpeg-1.5.2_1
 liboping.so.0 liboping-1.8.0_1
 libloudmouth-1.so.0 loudmouth-1.5.3_12
-libtorrent-rasterbar.so.10 libtorrent-rasterbar-1.2.17_1
+libtorrent-rasterbar.so.10 libtorrent-rasterbar-1.2.17_2
 libcapstone.so.4 capstone-4.0_1
 libhavege.so.2 libhaveged-1.9.11_1
 libnih.so.1 libnih-1.0.3_1
diff --git a/srcpkgs/libtorrent-rasterbar/template b/srcpkgs/libtorrent-rasterbar/template
index 52377b39eca4..135d89b9c85a 100644
--- a/srcpkgs/libtorrent-rasterbar/template
+++ b/srcpkgs/libtorrent-rasterbar/template
@@ -2,7 +2,7 @@
 # Breaks ABI/API without changing soname, revbump all dependants
 pkgname=libtorrent-rasterbar
 version=1.2.17
-revision=1
+revision=2
 build_style=cmake
 configure_args="DCMAKE_CXX_STANDARD=14 -Dbuild_examples=ON -Dbuild_tools=ON
  -Dpython-bindings=ON"

From e9061f9c114123b9ebd0d55aa84464f220fcb2e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 11 Sep 2022 23:31:01 +0700
Subject: [PATCH 3/3] qbittorrent: rebuild for boost-asio fix

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

diff --git a/srcpkgs/qbittorrent/template b/srcpkgs/qbittorrent/template
index 67e6b94edc53..e8e96200b845 100644
--- a/srcpkgs/qbittorrent/template
+++ b/srcpkgs/qbittorrent/template
@@ -1,7 +1,7 @@
 # Template file for 'qbittorrent'
 pkgname=qbittorrent
 version=4.4.3.1
-revision=2
+revision=3
 create_wrksrc=yes
 build_style=gnu-configure
 build_helper=qmake

  parent reply	other threads:[~2022-09-11 16:31 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-07 20:36 [PR PATCH] " ericonr
2022-09-07 20:37 ` ericonr
2022-09-08  1:34 ` [PR REVIEW] " sgn
2022-09-08  1:34 ` sgn
2022-09-08  2:45 ` ericonr
2022-09-08  2:46 ` ericonr
2022-09-08  2:49 ` [PR PATCH] [Updated] " ericonr
2022-09-08  5:48 ` [PR REVIEW] " sgn
2022-09-08  5:50 ` sgn
2022-09-09  1:55 ` [PR PATCH] [Updated] " sgn
2022-09-09  1:56 ` sgn
2022-09-09  1:58 ` [PR REVIEW] " sgn
2022-09-09  6:34 ` [PR PATCH] [Updated] " sgn
2022-09-09  6:34 ` sgn
2022-09-11 16:31 ` sgn [this message]
2022-09-11 16:37 ` [PR PATCH] [Merged]: " sgn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220911163144.0EitmLlmsRsZbqbuvjbveYOLb4pFeWELgfXvQ1i7ml0@z \
    --to=sgn@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).