Hello, everyone. Following a similar change in distutils-r1, I would like to remove the parallel run support in multilib eclasses, and effectively from multibuild completely.
The goal is to make things simpler, and follow PMS properly. Right now the parallel runs imply running commands in a subshell. This has three important implications: 1. variable exports and environment changes inside the implicit subshell don't affect the outer scope -- developers are sometimes confused by that, 2. parallel runs can collide if temporary files aren't named uniquely -- think of ffmpeg, waf, 3. 'die' called in a subshell is unsupported by the PMS, and didn't make it into EAPI 6. The side advantages are that we can get rid of multiprocessing inherit and locking in multibuild_merge_root(). Possible issues: if people were relying on commands inside parallel not to affect the outer environment (i.e. doing 'cd' and expecting the next call to start in the initial location, or exporting variables and expecting them to disappear), the ebuilds will fail randomly. However, that's quite unlikely. Your thoughts? -- Best regards, Michał Górny