Notmuch dynamic library can now be loaded on macos
On macos, the name of dynamic libraries is a little bit different than on Unix. The code was looking for a `libnotmuch.so.5` library, while on macos it's installed as `libnotmuch.5.dylib`. This commit uses cfg attribute to conditionally change the library name. Closes #106106-libnotmuch5-not-found-on-macos
parent
66c6b62aa6
commit
7afd456f38
|
@ -156,7 +156,11 @@ impl Backends {
|
|||
}
|
||||
#[cfg(feature = "notmuch_backend")]
|
||||
{
|
||||
if libloading::Library::new("libnotmuch.so.5").is_ok() {
|
||||
#[cfg(target_os = "unix")]
|
||||
let dlpath = "libnotmuch.so.5";
|
||||
#[cfg(target_os = "macos")]
|
||||
let dlpath = "libnotmuch.5.dylib";
|
||||
if libloading::Library::new(dlpath).is_ok() {
|
||||
b.register(
|
||||
"notmuch".to_string(),
|
||||
Backend {
|
||||
|
|
|
@ -307,7 +307,11 @@ impl NotmuchDb {
|
|||
_is_subscribed: Box<dyn Fn(&str) -> bool>,
|
||||
event_consumer: BackendEventConsumer,
|
||||
) -> Result<Box<dyn MailBackend>> {
|
||||
let lib = Arc::new(libloading::Library::new("libnotmuch.so.5")?);
|
||||
#[cfg(target_os = "unix")]
|
||||
let dlpath = "libnotmuch.so.5";
|
||||
#[cfg(target_os = "macos")]
|
||||
let dlpath = "libnotmuch.5.dylib";
|
||||
let lib = Arc::new(libloading::Library::new(dlpath)?);
|
||||
let path = Path::new(s.root_mailbox.as_str()).expand();
|
||||
if !path.exists() {
|
||||
return Err(MeliError::new(format!(
|
||||
|
|
Loading…
Reference in New Issue