--- a/README Fri Nov 12 15:53:52 2010 -0800
+++ b/README Wed Nov 17 09:27:13 2010 -0800
@@ -1,30 +1,1 @@
-This is ns-3-allinone.
-
-If you have downloaded this in tarball release format, this directory
-contains some released ns-3 version, along with 3rd party components
-necessary to support all optional ns-3 features, such as Python
-bindings and Network Simulation Cradle. In this case, just run the
-script build.py; all the components, plus ns-3 itself, will thus be
-built.
-
-If, on the other hand, you have obtained this by cloning the mercurial
-repository, this directory only contains a few python scripts:
-
- download.py:
-
- This script will take care of downloading all necessary
- components, including pybindgen and NSC, along with cloning an
- ns-3 repository. By default, the main development ns-3 branch,
- ns-3-dev, will be cloned, but it can be overridden via the -n
- command line option. For example,
-
- ./download.py -n craigdo/ns-3-tap
-
- will clone the repository http://code.nsnam.org/craigdo/ns-3-tap
- into the allinone directory.
-
- build.py:
-
- This script will get all external components that need to be
- built, and then will build ns-3 using the downloaded components.
-
+This is an experimental prototype that builds ns-3 with the jhbuild build system.
--- a/build.py Fri Nov 12 15:53:52 2010 -0800
+++ b/build.py Wed Nov 17 09:27:13 2010 -0800
@@ -5,7 +5,7 @@
from xml.dom import minidom as dom
import constants
-from util import run_command, fatal, CommandError
+from util import run_command, fatal, CommandError, which
def build_nsc():
@@ -50,6 +50,9 @@
def main(argv):
+ if not which("jhbuild"):
+ fatal("failed: jhbuild required but not found on system")
+
parser = OptionParser()
parser.add_option('--disable-nsc',
help=("Don't try to build NSC"), action="store_true", default=False,
--- a/download.py Fri Nov 12 15:53:52 2010 -0800
+++ b/download.py Wed Nov 17 09:27:13 2010 -0800
@@ -135,6 +135,11 @@
pybindgen_config.setAttribute("dir", pybindgen_dir)
pybindgen_config.setAttribute("version", pybindgen_version)
+ # Set configuration information for NSC.
+ nsc_config = config.documentElement.appendChild(config.createElement("nsc"))
+ nsc_config.setAttribute("dir", nsc_dir)
+ nsc_config.setAttribute("version", nsc_version)
+
# write the config to a file
dot_config = open(".config", "wt")
config.writexml(dot_config, addindent=" ", newl="\n")
--- a/ns-3.modules Fri Nov 12 15:53:52 2010 -0800
+++ b/ns-3.modules Wed Nov 17 09:27:13 2010 -0800
@@ -10,7 +10,7 @@
<repository type="hg" name="secure.wand.net.nz"
href="https://secure.wand.net.nz/mercurial/"/>
- <waf id="ns-3-dev">
+ <waf id="ns-3-dev" waf-command="waf --with-pybindgen='../pybindgen' --with-nsc='../nsc'">
<branch repo="code.nsnam.org"
module="ns-3-dev"
checkoutdir="ns-3-dev"/>