On Sat, Sep 19, 2015 at 9:41 AM, Jack Howarth <howarth.at.f...@gmail.com>
wrote:

>
>
> On Sat, Sep 19, 2015 at 9:13 AM, Max Horn <m...@quendi.de> wrote:
>
>> Hi again,
>>
>> On 16.09.2015, at 14:42, Jack Howarth <howarth.at.f...@gmail.com> wrote:
>>
>> > MacPorts gmake doesn't show the problem on the command line or in their
>> builds but I have only been able to test a rather narrow set of MacPorts
>> builds against their gmake. However I have been able to reproduce the build
>> failures under fink when the call to 'make' is substituted with
>> '/opt/local/bin/make' to invoke their copy.
>>
>> That's interesting, and a bit weird... But at least it suggest that it is
>> directly not our "fault" for breaking GNU make, it may just be broken in
>> general on Mac OS X 10.11... Not that this insight helps anybody faced with
>> the problem :-/.
>>
>>
>>
>> > I doubt a unique set of packages exists to protect from this bug with
>> the usage of /usr/bin/make. The bug looks to be a race condition in the
>> threading support as tweaking the optimization of make build modulates the
>> number of packages that fail under fink make. Likewise reducing the number
>> of cores in the parallel build can suppress the bug. Also, when I debugged
>> this by adding -d, only one of the failing tests, texlive-base, remained
>> and even then only randomly. So the real question will be how many users
>> machines have the cores/speed to tickle the bug. My past experience with
>> Apple and threading bugs is that it is futile to expect them to be fixed in
>> a given OS release and usually you have to wait for the next major kernel
>> rewrite.
>>
>> So, what shall we do then?
>>
>>
>> * Just "patch" affected packages to workaround the issue
>>
>> * Split "make" as Jack proposed (i.e. package "make" only provides a
>> "gmake" binary, and "make-default" provides a "make" symlink to it, similar
>> to e.g. coreutils-default).
>>    However, I'd prefer to *only* do that on 10.11, as to minimize the
>> impact this has on users. That said, my hope is that whether Apple's and
>> our make is used for most users...
>>
>>
>> Cheers,
>> Max
>
>
> Max,
>      I've been exploring this issue on MacPorts under 10.11 with the
> change...
>
> --- /opt/local/libexec/macports/lib/port1.0/port_autoconf.tcl.orig 2015-09-18
> 16:23:32.000000000 -0400
> +++ /opt/local/libexec/macports/lib/port1.0/port_autoconf.tcl 2015-09-18
> 18:52:23.000000000 -0400
> @@ -56,7 +56,7 @@
>   variable unzip_path "/usr/bin/unzip"
>   variable zip_path "/usr/bin/zip"
>   variable lsbom_path "/usr/bin/lsbom"
> - variable make_path "/usr/bin/make"
> + variable make_path "/opt/local/bin/gmake"
>   variable gnumake_path "/usr/bin/gnumake"
>   variable bsdmake_path ""
>   variable mkbom_path "/usr/bin/mkbom"
>
> and...
>
> sandbox_enable          no
>
> in /opt/local/etc/macports/macports.conf to disable their default use of
> Apple's sandbox during port builds. Building through a large number of
> packages (including many that trigger the bug on fink), I have been unable
> to trigger the bug (despite the fact the the gmake built by MacPorts can
> trigger the bug in fink builds).
>       I suspect we are looking at some issue specific to building as an
> exec() under perl. Unfortunately, so far I have been unable to replicate
> the failures when building manually on the command line from inside of the
> system perl. The most sensible approach is to continue down that path and
> try to enhance the command line testing from within perl until we fully
> duplicate the steps being used by fink. Only thing can we file a sensible
> radar bug report.
>                 Jack
> ps I have also been able to reproduce some of these failures under
> fink with MaxBuildJobs: 4,
>
>
>
Alternatively, perhaps dpkg is the trigger? Does anyone know if it is
possible to trick fink's dpkg to build a package on the command line
outside of fink and thus the system perl? That would be an interesting test
to use on one of the failing package builds.
------------------------------------------------------------------------------
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
List archive:
http://news.gmane.org/gmane.os.apple.fink.devel
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to