On Nov 17, 2019, at 15:24, Nathan Hartman wrote:
> On Sun, Nov 17, 2019 at 2:47 PM Ryan Schmidt wrote:
>
> > Hi, I noticed this bug in subversion on macOS. I reported it here:
> >
> > https://trac.macports.org/ticket/59712
> >
> > But it's really an upstream issue so I would like to report it here
> > as well.
> >
> > The subversion build evidently runs the just-built svnversion at
> > some point. This crashes, because the libraries it's linked with
> > haven't been installed yet, and I guess it's not setting
> > DYLD_LIBRARY_PATH to the path where the built libraries are. I
> > assume that the fix will be setting that variable.
>
> I am not an expert on this subject but IIRC setting DYLD_LIBRARY_PATH
> will *not* help because of something called SIP (System Integrity
> Protection) on macOS.
On newer versions of macOS, DYLD_* environment variables are no longer passed
down to subshells. This merely means that you need to set DYLD_LIBRARY_PATH at
the right time, in other words right as you're running svnversion, and not in
some top-level script that will eventually after calling various sub scripts
run svnversion.
> But I wonder, why does this fail? Subversion's test suite (which runs
> the svn binaries) runs just fine. It stands to reason that svnversion
> should run just fine, too.
I have not looked at your build system, but it fails for the reason I stated.
> That tells me that it must be running, not crashing.
It is crashing. The operating system crash logs (attached to the MacPorts
ticket) were what alerted me to the problem.
> Of course, I could be mistaken. Please could you show us more output
> from 'make install' than the 3 lines in the MacPorts Trac issue?
Sure, here's one of the logs from our build system:
https://build.macports.org/builders/ports-10.14_x86_64-builder/builds/44459/steps/install-port/logs/stdio
The relevant part in the log is where it says:
(subversion/svnversion/svnversion . 2> /dev/null || \
svnversion . 2> /dev/null || \
echo "unknown"; \
) >
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_devel_subversion/subversion/work/destroot/opt/local/include/subversion-1/svn-revision.txt
/bin/sh: line 1: 61814 Abort trap: 6 subversion/svnversion/svnversion
. 2> /dev/null
> Also, are you building from a distribution tarball or from a working
> copy checked out from Subversion's source repository?
Distribution tarball.