[Ns-developers] build stuff and downloading external deps

Gustavo Carneiro gjcarneiro at gmail.com
Thu Sep 4 05:33:47 PDT 2008


2008/9/3 Mathieu Lacage <mathieu.lacage at sophia.inria.fr>

> hi,
>
> While trying to look at some of the nsc build issues, it occured to me
> that we do a lot of things when running waf which require network access
> and that this can be problematic in a lot of situations (for example,
> such as yesterday when the nsc repo server times out) where network
> access is spotty. I noticed also that we have quite a bit of different
> code to download different bits and pieces:
>  - pybindgen if we don't find the right version for python bindings
>  - ns-3-dev-traces if we want to run regression tests
>  - nsc if we want to use nsc tcp stacks
>
> To summarize, I would like to split all the network access from our
> build stuff proper and:
>
>  1) provide a small download.py file (find a better name if you care)
> which will attempt to download missing bits and pieces, depending
> whether this is a release tarball or a snapshot from the ns-3-dev main
> tree. It could have a couple of command-line options which say which
> bits to download and/or update
>
>  2) rework the build scripts to not download anything, try to find
> things under the current dir, disable the feature if they can't find it
> there, and provide a --with-foo=/location switch for each of the
> optional stuff to look for these optional features in a separate
> location.
>
> If I hear no loud complaints about the basic idea, I will work on that
> starting tomorrow.
>
> Comments and suggestions welcome,


Is it really better, from developer perspective, to having to run a download
script separately?  When I change pybindgen required version, the
configuration script would run again automatically, then it would not find
pybindgen and continue building without python bindings.  If the user then
wants python bindings he has to manually run  a download script, and then
re-run the configure script, then build.

IMHO, having the download part of the configuration is much smoother.

-- 
Gustavo J. A. M. Carneiro
INESC Porto, Telecommunications and Multimedia Unit
"The universe is always one step beyond logic." -- Frank Herbert


More information about the Ns-developers mailing list