[RFC] parallelizing cygport test

Jon Turney jon.turney@dronecode.org.uk
Tue Jul 25 16:01:30 GMT 2023


On 24/07/2023 16:50, ASSI via Cygwin-apps wrote:
> ASSI via Cygwin-apps writes:
>> I've recently updated a few packages that do a serious amount of
>> compilation during test and it became painfully obvious that cygtest
>> does not run make with the "-j" option nor does it currently offer an
>> option to change that.
>>
>> Given the brittleness of some test suites it might be prudent to keep
>> the default "serial" for a while and in any case not confound it with
>> the option of doing the build in parallel.  So the suggestion is to add
>> a variable MAKETESTOPTS following along MAKEOPTS example to be used in
>> cygport files.  I would also suggest to add a command-line option "-jt"
>> / "--jobs-test" or some other suitable name plus a configuration option
>> for cygportrc that when set causes cygport to populate MAKETESTOPTS with
>> the same default as MAKEOPTS and otherwise leave it empty (keep the
>> current default of "serial" make).
> 
> POC:
> https://repo.or.cz/cygport/rpm-style.git/commitdiff/3756290fd1de63e0514aa71eaca62569eb3a782a

I'm not sure we need to go through these hoops to keep 'make check' 
working on old cygports which assume that the make will not be parallelized.

We didn't stop just totally ignoring the result of 'make check' until 
fairly recently (e31cdc53b87b097865cb70539be85c8ee16c6431).

So maybe just add MAKEOPTS to the 'make check' invocation, and going 
forwards cygports where parallelizing the test suite fails should use an 
explicit MAKEOPTS+=" -j1" ?

(Your POC also doesn't apply the parallelization factor to other test 
backends e.g. ninja - are they ok, or do they also need attention?)



More information about the Cygwin-apps mailing list