# New Ticket Created by Geoffrey Broadwell # Please include the string: [perl #56634] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=56634 >
>From Coke's rant in RT #55238: ***** (Please take the rest of this as a documentation of a rant which is not specifically directed at you. Some enterprising person could probably break this up into an RT or two =-) We have a few kinds of generated files at the moment: 1) generated by normal config 2) generated by config with special maintainer options 3) generated by some funky command line that isn't part of the build and you have to remember when to run it. (like when adding/deleting opcodes) 4) generated during the build process. Step 3 should go away, and either become part of step 2, or step 4, depending on if a non-standard tool is required. Step 2 can go away and be replaced by a clever config option that detects whether or not you have the tools installed. If not, then you get "touch" and a warning. Everything still depends on each other, but if you don't have the tool, you can't rebuild the file. (In fact, we might want to replace this by a failure, not a touch: if you change a file that generated files depend on and you can't update the generated (checked in) files, you shouldn't be editing that file in the first place, now should you?) Additionally, there are some files (e.g. Parrot::Config) which are smart enough to at least complain if they need configure to be run and it hasn't. Sadly, none of this addresses the issue you present here, which is: how could I have avoided a realclean after this update. Unifying the build process is is going to involve a revamp of config, however, which is a whole can of worms I'm trying to avoid just this second. In the mean time, we can at least reduce the kinds of generated files we have by half by cutting out types 2 & 3 above. A good intermediate step would be to create a dependency for config-generated files that stopped the build with the message "You must re-Configure parrot to generate this file."; If we ever have the ability to generate that file as the type 4 files above, we can just change the build step there to actually gen the file instead of complaining. ***** Creating a new ticket with this rant as requested, so I can resolve the old ticket. -'f