Github messages for voidlinux
 help / color / mirror / Atom feed
From: non-Jedi <non-Jedi@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: [PR PATCH] julia: stop hardcoding mbedtls sonames.
Date: Wed, 07 Apr 2021 04:30:35 +0200	[thread overview]
Message-ID: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-30061@inbox.vuxu.org> (raw)

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

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

https://github.com/non-Jedi/void-packages julia-bundle-mbedtls
https://github.com/void-linux/void-packages/pull/30061

julia: stop hardcoding mbedtls sonames.
When julia 1.6.0 vendors in mbedtls, it uses v2.26.0 which provides a
different set of sonames than the version provided by Void. We need to
patch where the library sonames are hardcoded to allow julia to properly
call into libraries provided by mbedtls.

Closes #29964

See <https://github.com/julialang/julia/issues/40198> for the upstream
bug.

This patch is directly copied from Arch Linux.

<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [x] 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/30061.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-julia-bundle-mbedtls-30061.patch --]
[-- Type: text/x-diff, Size: 3457 bytes --]

From 13d5fc1c8e8af8e75046a803641165526d9b3759 Mon Sep 17 00:00:00 2001
From: Adam Beckmeyer <adam_gpg@thebeckmeyers.xyz>
Date: Tue, 6 Apr 2021 22:26:09 -0400
Subject: [PATCH] julia: stop hardcoding mbedtls sonames.

When julia 1.6.0 vendors in mbedtls, it uses v2.26.0 which provides a
different set of sonames than the version provided by Void. We need to
patch where the library sonames are hardcoded to allow julia to properly
call into libraries provided by mbedtls.

Closes #29964

See <https://github.com/julialang/julia/issues/40198> for the upstream
bug.
---
 .../julia/patches/julia-hardcoded-libs.patch  | 43 +++++++++++++++++++
 .../patches/julia-hardcoded-libs.patch.args   |  1 +
 srcpkgs/julia/template                        |  2 +-
 3 files changed, 45 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/julia/patches/julia-hardcoded-libs.patch
 create mode 100644 srcpkgs/julia/patches/julia-hardcoded-libs.patch.args

diff --git a/srcpkgs/julia/patches/julia-hardcoded-libs.patch b/srcpkgs/julia/patches/julia-hardcoded-libs.patch
new file mode 100644
index 000000000000..bf657361b980
--- /dev/null
+++ b/srcpkgs/julia/patches/julia-hardcoded-libs.patch
@@ -0,0 +1,43 @@
+diff --git a/stdlib/MbedTLS_jll/src/MbedTLS_jll.jl b/stdlib/MbedTLS_jll/src/MbedTLS_jll.jl
+index a7ca666b23..b84a42f4e7 100644
+--- a/stdlib/MbedTLS_jll/src/MbedTLS_jll.jl
++++ b/stdlib/MbedTLS_jll/src/MbedTLS_jll.jl
+@@ -31,9 +31,9 @@ elseif Sys.isapple()
+     const libmbedtls = "@rpath/libmbedtls.13.dylib"
+     const libmbedx509 = "@rpath/libmbedx509.1.dylib"
+ else
+-    const libmbedcrypto = "libmbedcrypto.so.5"
+-    const libmbedtls = "libmbedtls.so.13"
+-    const libmbedx509 = "libmbedx509.so.1"
++    const libmbedcrypto = "libmbedcrypto.so"
++    const libmbedtls = "libmbedtls.so"
++    const libmbedx509 = "libmbedx509.so"
+ end
+ 
+ function __init__()
+diff --git a/stdlib/libLLVM_jll/src/libLLVM_jll.jl b/stdlib/libLLVM_jll/src/libLLVM_jll.jl
+index fa45e754e5..b51812e3a8 100644
+--- a/stdlib/libLLVM_jll/src/libLLVM_jll.jl
++++ b/stdlib/libLLVM_jll/src/libLLVM_jll.jl
+@@ -23,7 +23,7 @@ if Sys.iswindows()
+ elseif Sys.isapple()
+     const libLLVM = "@rpath/libLLVM.dylib"
+ else
+-    const libLLVM = "libLLVM-11jl.so"
++    const libLLVM = "libLLVM.so"
+ end
+ 
+ function __init__()
+diff --git a/stdlib/nghttp2_jll/src/nghttp2_jll.jl b/stdlib/nghttp2_jll/src/nghttp2_jll.jl
+index 8b98c76ac5..77ad9e3800 100644
+--- a/stdlib/nghttp2_jll/src/nghttp2_jll.jl
++++ b/stdlib/nghttp2_jll/src/nghttp2_jll.jl
+@@ -22,7 +22,7 @@ if Sys.iswindows()
+ elseif Sys.isapple()
+     const libnghttp2 = "@rpath/libnghttp2.14.dylib"
+ else
+-    const libnghttp2 = "libnghttp2.so.14"
++    const libnghttp2 = "libnghttp2.so"
+ end
+ 
+ function __init__()
diff --git a/srcpkgs/julia/patches/julia-hardcoded-libs.patch.args b/srcpkgs/julia/patches/julia-hardcoded-libs.patch.args
new file mode 100644
index 000000000000..7a57aa55b385
--- /dev/null
+++ b/srcpkgs/julia/patches/julia-hardcoded-libs.patch.args
@@ -0,0 +1 @@
+-Np1
\ No newline at end of file
diff --git a/srcpkgs/julia/template b/srcpkgs/julia/template
index 6ff8671036c7..d39e82ab2420 100644
--- a/srcpkgs/julia/template
+++ b/srcpkgs/julia/template
@@ -1,7 +1,7 @@
 # Template file for 'julia'
 pkgname=julia
 version=1.6.0
-revision=1
+revision=2
 archs="i686* x86_64* armv7l* aarch64*"
 build_style=gnu-makefile
 make_build_args="prefix=/usr sysconfdir=/etc datarootdir=/usr/share

             reply	other threads:[~2021-04-07  2:30 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-07  2:30 non-Jedi [this message]
2021-04-07  2:35 ` [PR REVIEW] " ericonr
2021-04-07  2:46 ` non-Jedi
2021-04-07  3:00 ` ahesford
2021-04-07 14:09 ` non-Jedi
2021-04-09  2:48 ` [PR REVIEW] " ericonr
2021-04-15 19:41 ` [PR PATCH] [Updated] " non-Jedi
2021-05-06  2:27 ` [PR REVIEW] " non-Jedi
2021-05-16  2:54 ` [PR PATCH] [Closed]: " ahesford

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=gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-30061@inbox.vuxu.org \
    --to=non-jedi@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).