Re: Thanks it works, now what

Bram Moolenaar <[email protected]>
Newsgroups gmane.comp.tools.aap.user
Message-ID <[email protected]>
Wink Saville wrote:

> 1) I want to be able to build any given subsystem without building
> others, it appears using ":child" and ":includes" allow me to do this
> but my directory structure is fairly complex and may evolve over time
> so I don't want children to have to know where the root is. For
> example in the manual on page 25 the child had the statement
> ":include ../common.aap". But I'd rather have it something like
> ":include $rootdir/common.aap" is this possible?

Yes, the name of the recipe to be included can be made with variables.
You could set $rootdir in your startup recipe, for example.  It's
flexible enough to do it the way you prefer.  I would use a name like
"vimrootdir", you could have several projects.

If you split up the project in pieces then using ":child" should work
well.  Each child can be build separately, or you can build the whole
"family".

> 2) In "Chapter 9. More Than One Recipe" the main.aap at the root had
> the ":program" statement, but since I'm going to making lots of
> different things, I don't want the "$rootdir/main.aap" to know what
> is being made I just want it invoke each of the children and let the
> children build what there suppose to. How can I do this?

It depends on what you want to build.  If it's a program then you can
use ":program".  If you are building intermediate results you could pass
the name of the result back to the parent with $_parent.result.

You can always fall back to explicitly specifying dependencies, like you
do with make.  Commands like ":program" are shortcuts.

> 3) I assume $rootdir/main.app will have to know the order to build
> things, i.e. libraries will have to be built before users of the
> libraries or is aap smart enough to know how to do this?

This should happen automatically.  Just specify the dependencies and Aap
will figure it out.

> 4) I'm going to be using ARM ADS1.2 compiler I assume I'll need to
> create an "armads1_2.py" modeling one of the tools/*.py files, which
> should I use as a base? (Note I'm a C/C++ programer and no nothing
> about Python but willing to learn:)

It depends on what kind of arguments the compiler takes.  If it's mostly
standard C then you might be able to do it with $CFLAGS and other
variables.  Otherwise browse the tools/*.py files and looks which one
matches your compiler best.

> Thanks in advance, hopefully if I'll be able to use aap and makes
> some contributation back to the cause.

Note that Aap is open source and being developed, thus if there is
something that doesn't work it could be added.

-- 
An indication you must be a manager:
You can explain to somebody the difference between "re-engineering",
"down-sizing", "right-sizing", and "firing people's asses".

 /// Bram Moolenaar -- [email protected] -- 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 here: http://ICCF-Holland.org/click1.html  ///


-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?   SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.