Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Dec 2013 21:03:56 -0500
From:      "Chad J. Milios" <milios@ccsys.com>
To:        Peter <pmc@citylink.dinoex.sub.org>
Cc:        freebsd-ports <ports@freebsd.org>, "multimedia@freebsd.org" <multimedia@freebsd.org>, "bug-followup@FreeBSD.org" <bug-followup@FreeBSD.org>
Subject:   Re: [FIXED] ports/183791: audio/liba52 (liba52-0.7.4_2) is not jobs safe
Message-ID:  <39530B93-79F7-4CB2-8CA5-DAE04E08EA30@ccsys.com>
In-Reply-To: <20131225130213.GA67807@gate.oper.dinoex.org>
References:  <20131225130213.GA67807@gate.oper.dinoex.org>

next in thread | previous in thread | raw e-mail | index | archive | help


> On Dec 25, 2013, at 8:02 AM, Peter <pmc@citylink.dinoex.sub.org> wrote:
> 
> This seems to be a race condition with the timestamps of the Makefiles. 
> "make install" thinks that the Makefiles are outdated, and recreates
> them before doing the install - but now with the target pointing directly 
> to /usr/local and not to the staging area.
> 
> In the log we can see this happening: 
> 
>> Making install in liba52
>> gmake[1]: Entering directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> cd .. \
>> && CONFIG_FILES=liba52/Makefile CONFIG_HEADERS= /bin/sh ./config.status
>> config.status: creating liba52/Makefile
>> config.status: executing default-1 commands
>> gmake[1]: Leaving directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> gmake[1]: Entering directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> gmake[2]: Entering directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> /bin/sh ../autotools/mkinstalldirs /usr/local/lib
> 
> while on successful runs these lines do not appear:
> 
>> Making install in liba52
>> gmake[1]: Entering directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> gmake[2]: Entering directory `/usr/ports/audio/liba52/work/a52dec-0.7.4/liba52'
>> /bin/sh ../autotools/mkinstalldirs /usr/ports/audio/liba52/work/stage/usr/local/lib
> 
> 
> I could not figure out why or how this happens - but for now a suitable 
> workaround seems to be the following addition to the (main) makefile:
> 
>> pre-install:
>>       touch work/a52dec-*/*/Makefile

I can confirm that addition to the Makefile worked perfectly for me on all of 200 runs on both test servers. Thanks Peter!

Can someone close the PR after making a commit with the addition of the aforementioned pre-install target to /usr/ports/audio/liba52/Makefile please? (No revision bump necessary.)

-Chad


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?39530B93-79F7-4CB2-8CA5-DAE04E08EA30>