Bug 233300

Summary: net-im/fractal: fails to build with OpenSSL 1.1.1
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: Jan Beich <jbeich>
Status: Closed FIXED    
Severity: Affects Only Me CC: greg
Priority: --- Keywords: patch, patch-ready
Version: LatestFlags: greg: maintainer-feedback+
Hardware: Any   
OS: Any   
URL: http://beefy6.nyi.freebsd.org/data/120amd64-default/484852/logs/errors/fractal-3.30.0_2.log
Bug Depends on:    
Bug Blocks: 231931    
Description Flags
v1 none

Description Jan Beich freebsd_committer 2018-11-18 19:03:59 UTC
Created attachment 199324 [details]

openssl-sys-v0.9.35 has OpenSSL 1.1.1 support but not openssl-v0.9.24. Upstream fixed both in a *single* commit, so it's not clear how Fractal ended up bundling out-of-sync versions. Without USES=cargo updating a crate is non-trivial, so let's just pull the missing bits instead. Can you test runtime? I don't use this port.

Build logs:
- 11.2 amd64: https://ptpb.pw/q5L2
- 11.2 i386:  https://ptpb.pw/QB8D
- 12.0 amd64: https://ptpb.pw/1Wn3
- 12.0 i386:  https://ptpb.pw/xtuw
- 13.0 amd64: https://ptpb.pw/l2RZ
- 13.0 i386:  https://ptpb.pw/zdkN
Comment 1 Greg V 2018-11-21 11:31:02 UTC
(In reply to Jan Beich from comment #0)
Thanks a lot. Works great!

How do you patch these checksum files? Do you have a script?
Comment 2 commit-hook freebsd_committer 2018-11-21 15:07:14 UTC
A commit references this bug:

Author: jbeich
Date: Wed Nov 21 15:06:26 UTC 2018
New revision: 485518
URL: https://svnweb.freebsd.org/changeset/ports/485518

  net-im/fractal: unbreak with OpenSSL 1.1.1

  thread 'main' panicked at 'Unable to detect OpenSSL version', vendor/openssl/build.rs:16:14

  PR:		233300
  Reported by:	pkg-fallout
  Obtained from:	upstream
  Approved by:	Greg V (maintainer)

Comment 3 Jan Beich freebsd_committer 2018-11-21 15:22:29 UTC
(In reply to Greg V from comment #1)
> How do you patch these checksum files? Do you have a script?

I was too lazy and did it manually while confirming the fix is enough. Otherwise, see post-patch in lang/rust or try the following:

  $ find . -name \*.orig | 
      sed 'p; s/\.orig//' |
      xargs sha256 -q |
      xargs -n2 printf -- '-e s/%s/%s/\n' |
      xargs -J% sed -i .orig % $(find . -name .cargo-checksum.json)