[Scons-users] SCon example for common build scenario

William Blevins wblevins001 at gmail.com
Fri Jun 13 19:11:00 EDT 2014


Ronex,

All these questions are easily answered by the documentation.

1. A. Use variant directory for multiple builds in a single source tree:
http://www.scons.org/doc/production/HTML/scons-user.html#chap-variants
1. B. For multiple builds in different trees you could just add a build
argument and flip compiler flags as you see fit:
http://www.scons.org/doc/production/HTML/scons-user.html#sect-command-line-options
2. This is the whole point of SCons:
http://www.scons.org/doc/production/HTML/scons-user.html#chap-depends
3. See 2.
4. With Execute on the binary:
http://www.scons.org/doc/production/HTML/scons-user.html#idm23282464 and
AlwaysBuild:
http://www.scons.org/doc/production/HTML/scons-user.html#idm340808 and
knowing your targets.
5. Hierarchical builds if desired or if its simple just use the SConstruct:
http://www.scons.org/doc/production/HTML/scons-user.html#chap-hierarchical
6. See 1.

V/R,
William


On Fri, Jun 13, 2014 at 11:49 AM, ronex chako <ronex_89 at yahoo.in> wrote:

> I just started learning scon build tools But could not find any example
> which could describe the basic build scenario as mentioned below:
>
> | module_1:                              | module_2
>   |_ src                                   |_ src
>     |_ a.cpp                                 |_ c.cpp
>     |_ b.cpp                                 |_ d.cpp
>   |_ include                               |_ include
>     |_ a.h                                   |_ c.h
>     |_ b.h                                   |_ d.h
>   |_ test
>     |_ test_1
>     |_ test_2
>
> Here module_1 depends on the library created from module_2I want to
> implement SCon makefiles for different *release and debug build* which
> can work for platforms like *Windows and Linux* and implement the task as
> mentioned below:
>
>
>    1. SCon should build sources in release(build/release) and
>    debug(build/debug) mode, For debug mode it must use appropriate flags
>    depending on the OS.
>    2. Running scons inside module_1 it should first search for
>    libmodule_2.(a/so) (can be either shared or static library which needs
>    to be decide from scon environment variable/flag), if not present then
>    build it (How this kind of dependencies cane be implied in scons and
>    resolved in an elegant way ?)
>    3. If libmodules_2 is found or in case if not found then after
>    building it, it should later build module_2.
>    4. How can I add regression target in module_1 to run all the test
>    cases ?
>    5. Where can I place and implement Sconstruct and SConscript files for
>    above scenario.. i.e. Can it be done using some top level SConstruct file
>    and SConscript in module_1 and module_2 ?
>    6. How can I specify the release and debug directories names based on
>    the tools used by scons ? i.e if it uses gcc version 4.2 then
>    build_gcc_v_4.2 or release_gcc_v_4..
>
>
> Kindly help me with some examples, or solution for the above scenario...
> Thanks in advance.
> I heartily appreciate any pointers or help.
>
>
> Regards,
> Ronex
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> http://four.pairlist.net/mailman/listinfo/scons-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://four.pairlist.net/pipermail/scons-users/attachments/20140613/7c5bf57a/attachment.html>


More information about the Scons-users mailing list