Re: [A-a-p-user] compilation vs. publishing
Brought to you by:
vimboss
From: Bram M. <Br...@mo...> - 2003-02-18 20:59:44
|
Matthew Weier O'Phinney wrote: > I'm using A-A-P (by the way, what does A-A-P mean? does it stand for > anything? history...?) as a regular tool in website development. A-A-P doesn't stand for something specific. > I mailed a couple months ago about creating a .htaap filetype that I > compile into .html files; certain headers and content are changed based > on server environment (development, qa, customer test, production), as > well as upload locations, cvs, etc. I use this quite often, but I also > regularly write quickie perl compilers for specific projects. A-A-P has > been incredibly useful for improving my productivity and decreasing > errors when changing server environments (usually defined as aap > variants). > > One thing I run into on a regular basis: I have a default action of > compiling files; i.e., compilation occurs when I do 'aap' 'aap publish' > or 'aap revise'; in addition, I usually have 3-4 variants set up (dev, > (qa), ct, pro). If I define a compilation action such as: > > rule %.html : %.htaap > :sys $COMPILER -o $OPTIONS $source $target > > When I publish, if I switch variants, *ALL* files will be compiled, but > only *CHANGED* files will be published. What I'd like to see when > publishing with a-a-p is for it to only compile those files that have > changed. This would radically decrease the time it takes to publish when > I'm switching variants. > > Does that make sense? Or does it make more sense for a-a-p to do what > it's doing? If so, why? I suppose you change the value of $OPTIONS for the variants. A-A-P notices this change and decides the target must be generated, in case this different build command produces a different file. When using variants, it is important to make sure all target files (also intermediate results) are stored in separate build directories. That avoids that switching to another variant causes all files to be build again that are produced by commands that use different options for the new variant. After generating the files, the publish action will check for files that really changed. Those files that remain equal after the variant switch won't be published then. -- DINGO: You must spank her well and after you have spanked her you may deal with her as you like and then ... spank me. AMAZING: And spank me! STUNNER: And me. LOVELY: And me. "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Help AIDS victims, buy at Amazon -- http://ICCF.nl/click1.html /// |