[Xapian-tickets] [Xapian] #707: Problems on OS X El Capitan
Xapian
nobody at xapian.org
Mon Mar 7 16:37:38 GMT 2016
#707: Problems on OS X El Capitan
-----------------------------+-----------------------------
Reporter: james | Owner: james
Type: defect | Status: new
Priority: normal | Milestone: 1.4.x
Component: Xapian-bindings | Version:
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: | Operating System: Mac OS X
-----------------------------+-----------------------------
Comment (by james):
We don't set `DYLD_LIBRARY_PATH` indiscriminately; it's controlled by
`NEED_INTREE_DYLD`, which is only set on `darwin*`. However under some
circumstances under the patch we'll _clear_ `DYLD_LIBRARY_PATH` on other
platforms, although I don't believe that will cause any problems. The
`SET_DYLD_LIBRARY_PATH_IF_NEEDED` approach doesn't have this problem. We
could perhaps let that variable (which expands to `DYLD_LIBRARY_PATH=…` on
`darwin*`) be exported down to shell invocations, and there do `export
$SET_DYLD_LIBRARY_PATH_IF_NEEDED`, which I believe works although may be
unportable, and is certainly unreadable.
+1 on using `exec` to roll up the ends of shell scripts.
I'm not sure whether re-implementing `prove` is wise…is it likely to
change? If not it's moderately safe, at least. But I think we can just
document this somewhere; it only really applies to people who are
developing Xapian anyway.
I'm certainly in favour of drawing a boundary to what we're going to
bother doing. I think if you can install core, and build & test bindings
against system languages; and if you can build & test bindings against
non-system languages with an uninstalled core (eg from a bootstrapped
repo) then that's all we need, and we just document the rest. The former
should still work. The latter it's about ensuring that we don't directly
set `DYLD_LIBRARY_PATH` in make lines that call through `/bin/sh`.
--
Ticket URL: <https://trac.xapian.org/ticket/707#comment:2>
Xapian <//xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list