diff -r 5897b3ba019e net-im/fractal/Makefile --- net-im/fractal/Makefile Wed Jan 29 03:37:58 2020 +0000 +++ net-im/fractal/Makefile Wed Jan 29 11:29:03 2020 -0500 @@ -3,7 +3,7 @@ PORTNAME= fractal DISTVERSION= 4.2.2 CATEGORIES= net-im -MASTER_SITES= https://gitlab.gnome.org/World/fractal/uploads/${GL_HASH}/ +MASTER_SITES= https://gitlab.gnome.org/GNOME/fractal/uploads/${GL_HASH}/ MAINTAINER= greg@unrelenting.technology COMMENT= GTK+ Matrix IM client @@ -17,12 +17,11 @@ LIB_DEPENDS= libdbus-1.so:devel/dbus \ libgmp.so:math/gmp \ libgspell-1.so:textproc/gspell \ - libges-1.0.so:multimedia/gstreamer1-editing-services \ libhandy-0.0.so:x11-toolkits/libhandy USES= gettext gnome meson pkgconfig python:3.5+,build ssl tar:xz USE_GNOME= cairo gtk30 gtksourceview4 -USE_GSTREAMER1= bad +USE_GSTREAMER1= bad editing-services GL_HASH= 9f2b34d98cfe3c002f3afbfcbf14bc7c BINARY_ALIAS= python3=${PYTHON_CMD} diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs Wed Jan 29 11:29:03 2020 -0500 @@ -0,0 +1,69 @@ +--- vendor/openssl-sys/build/main.rs.orig 2019-11-30 10:09:17 UTC ++++ vendor/openssl-sys/build/main.rs +@@ -183,28 +183,32 @@ See rust-openssl README for more information: + if let Some(libressl_version) = libressl_version { + println!("cargo:libressl_version_number={:x}", libressl_version); + ++ let major = (libressl_version >> 28) as u8; + let minor = (libressl_version >> 20) as u8; + let fix = (libressl_version >> 12) as u8; +- let (minor, fix) = match (minor, fix) { +- (5, 0) => ('5', '0'), +- (5, 1) => ('5', '1'), +- (5, 2) => ('5', '2'), +- (5, _) => ('5', 'x'), +- (6, 0) => ('6', '0'), +- (6, 1) => ('6', '1'), +- (6, 2) => ('6', '2'), +- (6, _) => ('6', 'x'), +- (7, _) => ('7', 'x'), +- (8, 0) => ('8', '0'), +- (8, 1) => ('8', '1'), +- (8, _) => ('8', 'x'), +- (9, 0) => ('9', '0'), +- (9, _) => ('9', 'x'), ++ let (major, minor, fix) = match (major, minor, fix) { ++ (2, 5, 0) => ('2', '5', '0'), ++ (2, 5, 1) => ('2', '5', '1'), ++ (2, 5, 2) => ('2', '5', '2'), ++ (2, 5, _) => ('2', '5', 'x'), ++ (2, 6, 0) => ('2', '6', '0'), ++ (2, 6, 1) => ('2', '6', '1'), ++ (2, 6, 2) => ('2', '6', '2'), ++ (2, 6, _) => ('2', '6', 'x'), ++ (2, 7, _) => ('2', '7', 'x'), ++ (2, 8, 0) => ('2', '8', '0'), ++ (2, 8, 1) => ('2', '8', '1'), ++ (2, 8, _) => ('2', '8', 'x'), ++ (2, 9, 0) => ('2', '9', '0'), ++ (2, 9, _) => ('2', '9', 'x'), ++ (3, 0, 0) => ('3', '0', '0'), ++ (3, 0, 1) => ('3', '0', '1'), ++ (3, 0, _) => ('3', '0', 'x'), + _ => version_error(), + }; + + println!("cargo:libressl=true"); +- println!("cargo:libressl_version=2{}{}", minor, fix); ++ println!("cargo:libressl_version={}{}{}", major, minor, fix); + println!("cargo:version=101"); + Version::Libressl + } else { +@@ -240,7 +244,7 @@ fn version_error() -> ! { + " + + This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5 +-through 2.9.x, but a different version of OpenSSL was found. The build is now aborting ++through 3.0.x, but a different version of OpenSSL was found. The build is now aborting + due to this version mismatch. + + " +@@ -256,7 +260,7 @@ fn parse_version(version: &str) -> u64 { + + // and the type specifier suffix + let version = version.trim_right_matches(|c: char| match c { +- '0'...'9' | 'a'...'f' | 'A'...'F' => false, ++ '0'..='9' | 'a'..='f' | 'A'..='F' => false, + _ => true, + }); + diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs Wed Jan 29 11:29:03 2020 -0500 @@ -0,0 +1,11 @@ +--- vendor/openssl-sys/src/crypto.rs.orig 2019-11-30 10:09:17 UTC ++++ vendor/openssl-sys/src/crypto.rs +@@ -5,6 +5,8 @@ use *; + #[cfg(not(ossl110))] + pub const CRYPTO_LOCK_X509: c_int = 3; + #[cfg(not(ossl110))] ++pub const CRYPTO_LOCK_EVP_PKEY: c_int = 10; ++#[cfg(not(ossl110))] + pub const CRYPTO_LOCK_SSL_CTX: c_int = 12; + #[cfg(not(ossl110))] + pub const CRYPTO_LOCK_SSL_SESSION: c_int = 14; diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_evp.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ net-im/fractal/files/patch-vendor_openssl-sys_src_evp.rs Wed Jan 29 11:29:03 2020 -0500 @@ -0,0 +1,50 @@ +--- vendor/openssl-sys/src/evp.rs.orig 2019-11-30 10:09:17 UTC ++++ vendor/openssl-sys/src/evp.rs +@@ -10,6 +10,10 @@ pub const EVP_PKEY_RSA: c_int = NID_rsaEncryption; + pub const EVP_PKEY_DSA: c_int = NID_dsa; + pub const EVP_PKEY_DH: c_int = NID_dhKeyAgreement; + pub const EVP_PKEY_EC: c_int = NID_X9_62_id_ecPublicKey; ++#[cfg(ossl111)] ++pub const EVP_PKEY_ED25519: c_int = NID_ED25519; ++#[cfg(ossl111)] ++pub const EVP_PKEY_ED448: c_int = NID_ED448; + pub const EVP_PKEY_HMAC: c_int = NID_hmac; + pub const EVP_PKEY_CMAC: c_int = NID_cmac; + +@@ -154,6 +158,27 @@ cfg_if! { + } + } + cfg_if! { ++ if #[cfg(ossl111)] { ++ extern "C" { ++ pub fn EVP_DigestSign( ++ ctx: *mut EVP_MD_CTX, ++ sigret: *mut c_uchar, ++ siglen: *mut size_t, ++ tbs: *const c_uchar, ++ tbslen: size_t ++ ) -> c_int; ++ ++ pub fn EVP_DigestVerify( ++ ctx: *mut EVP_MD_CTX, ++ sigret: *const c_uchar, ++ siglen: size_t, ++ tbs: *const c_uchar, ++ tbslen: size_t ++ ) -> c_int; ++ } ++ } ++} ++cfg_if! { + if #[cfg(any(ossl102, libressl280))] { + extern "C" { + pub fn EVP_DigestVerifyFinal( +@@ -279,6 +304,8 @@ extern "C" { + + pub fn EVP_PKEY_new() -> *mut EVP_PKEY; + pub fn EVP_PKEY_free(k: *mut EVP_PKEY); ++ #[cfg(any(ossl110, libressl270))] ++ pub fn EVP_PKEY_up_ref(pkey: *mut EVP_PKEY) -> c_int; + + pub fn d2i_AutoPrivateKey( + a: *mut *mut EVP_PKEY, diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_lib.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ net-im/fractal/files/patch-vendor_openssl-sys_src_lib.rs Wed Jan 29 11:29:03 2020 -0500 @@ -0,0 +1,15 @@ +--- vendor/openssl-sys/src/lib.rs.orig 2019-11-30 10:09:17 UTC ++++ vendor/openssl-sys/src/lib.rs +@@ -88,10 +88,10 @@ pub type PasswordCallback = unsafe extern "C" fn( + #[cfg(ossl110)] + pub fn init() { + use std::ptr; +- use std::sync::{Once, ONCE_INIT}; ++ use std::sync::Once; + + // explicitly initialize to work around https://github.com/openssl/openssl/issues/3505 +- static INIT: Once = ONCE_INIT; ++ static INIT: Once = Once::new(); + + INIT.call_once(|| unsafe { + OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS, ptr::null_mut()); diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_obj__mac.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ net-im/fractal/files/patch-vendor_openssl-sys_src_obj__mac.rs Wed Jan 29 11:29:03 2020 -0500 @@ -0,0 +1,10 @@ +--- vendor/openssl-sys/src/obj_mac.rs.orig 2019-11-30 10:09:17 UTC ++++ vendor/openssl-sys/src/obj_mac.rs +@@ -912,3 +912,7 @@ pub const NID_rc4_hmac_md5: c_int = 915; + pub const NID_aes_128_cbc_hmac_sha1: c_int = 916; + pub const NID_aes_192_cbc_hmac_sha1: c_int = 917; + pub const NID_aes_256_cbc_hmac_sha1: c_int = 918; ++#[cfg(ossl111)] ++pub const NID_ED25519: c_int = 1087; ++#[cfg(ossl111)] ++pub const NID_ED448: c_int = 1088;