Re: [Module::Build] Recursive builds?
Status: Beta
Brought to you by:
kwilliams
|
From: Peter S. <Pe...@PS...> - 2006-02-13 23:48:56
|
At 09:40 AM 2/13/2006, Eric Wilhelm wrote: >I'm sure I've left something out, but the point is to never require a >build to look upwards from itself. The toplevel builder should play >manager to the subdir worker builders, feeding them everything they >need to know. > >There's also something about dependencies in the Build.PL stage. Maybe >the toplevel Build.PL could gather all of the META.yml info and inform >the workers about which dependencies are satisfied by their peers. Just looking for a simple solution, I see two alternatives: (1) By default, recurse through all subdirectories reproducing the current action in any that contain a Build.PL. - OR - (2) Require an option to be enabled for recursion. On finding a subdirectory containing a Build.PL, execute the current action there but prune. If the Build.PL at that level wants to recurse further, it can enable that option itself. So "perl Build.PL" would search down subdirectories for directories containing Build.PL, and then execute "perl Build.PL" in them. And ditto for "./Build <target>". In scenario (1), this would happen automatically, and would search throughout the tree. In scenario (2), some option would have to be enabled in the Build.PL to make this happen, and when recursing, on finding a Build.PL in any directory, the recursion would be pruned at that directory because the Build.PL it just found could recurse itself if it wanted to. That's all. No passing of parameters down to subsidiary Build.PLs, no looking upward, just really simple and leaving it up to the user to do that some way if they want to. At least the users will find it easy to understand how the feature works. My preference is for alternative (2). I don't mind submitting a patch, either, although it sounds like there's some history on this topic already and I don't want to step on any toes. -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ |