src/config-store/wscript
author Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
Thu, 08 Sep 2011 16:13:40 +0100
changeset 7487 82cd20da9650
parent 7438 3aeb5ac5af62
child 7512 bbdfcec0d97d
permissions -rw-r--r--
Upgrade to waf-1.6.7, work in progress
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6941
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     1
## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     2
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     3
def configure(conf):
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     4
    have_gtk = conf.pkg_check_modules('GTK_CONFIG_STORE', 'gtk+-2.0 >= 2.12', mandatory=False)
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     5
    conf.env['ENABLE_GTK_CONFIG_STORE'] = have_gtk
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     6
    conf.report_optional_feature("GtkConfigStore", "GtkConfigStore",
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     7
                                 conf.env['ENABLE_GTK_CONFIG_STORE'],
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     8
                                 "library 'gtk+-2.0 >= 2.12' not found")
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
     9
    have_libxml2 = conf.pkg_check_modules('LIBXML2', 'libxml-2.0 >= 2.6', mandatory=False)
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    10
    if have_libxml2:
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    11
        conf.define('HAVE_LIBXML2', 1)
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    12
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    13
    conf.env['ENABLE_LIBXML2'] = have_libxml2
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    14
    conf.report_optional_feature("XmlIo", "XmlIo",
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    15
                                 conf.env['ENABLE_LIBXML2'],
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    16
                                 "library 'libxml-2.0 >= 2.7' not found")
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    17
    conf.write_config_header('ns3/config-store-config.h', top=True)
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    18
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    19
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    20
def build(bld):
7345
850237ab2111 Bug 1199 - waf install doesn't work on x86_64
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6941
diff changeset
    21
    bld.install_files('${PREFIX}/include/ns3', '../../ns3/config-store-config.h')
850237ab2111 Bug 1199 - waf install doesn't work on x86_64
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6941
diff changeset
    22
6941
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    23
    module = bld.create_ns3_module('config-store', ['core', 'network'])
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    24
    module.source = [
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    25
        'model/attribute-iterator.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    26
        'model/config-store.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    27
        'model/attribute-default-iterator.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    28
        'model/file-config.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    29
        'model/raw-text-config.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    30
        ]
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    31
7487
82cd20da9650 Upgrade to waf-1.6.7, work in progress
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 7438
diff changeset
    32
    headers = bld.new_task_gen(features=['ns3header'])
6941
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    33
    headers.module = 'config-store'
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    34
    headers.source = [
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    35
        'model/file-config.h',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    36
        'model/config-store.h',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    37
        ]
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    38
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    39
    if bld.env['ENABLE_GTK_CONFIG_STORE']:
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    40
        headers.source.append ('model/gtk-config-store.h')
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    41
        module.source.extend (['model/gtk-config-store.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    42
                               'model/model-node-creator.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    43
                               'model/model-typeid-creator.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    44
                               'model/display-functions.cc',
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    45
                               ])
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    46
        module.uselib = 'GTK_CONFIG_STORE'
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    47
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    48
    if bld.env['ENABLE_LIBXML2']:
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    49
        module.source.append ('model/xml-config.cc')
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    50
        if bld.env['ENABLE_GTK_CONFIG_STORE']:
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    51
            module.uselib = module.uselib + ' LIBXML2'
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    52
        else:
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    53
            module.uselib = 'LIBXML2'
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    54
7438
3aeb5ac5af62 Add config-store example and update documentation
Tom Henderson <tomh@tomh.org>
parents: 7345
diff changeset
    55
    if bld.env['ENABLE_EXAMPLES']:
3aeb5ac5af62 Add config-store example and update documentation
Tom Henderson <tomh@tomh.org>
parents: 7345
diff changeset
    56
        bld.add_subdirs('examples')
3aeb5ac5af62 Add config-store example and update documentation
Tom Henderson <tomh@tomh.org>
parents: 7345
diff changeset
    57
6941
9d2c79c992d7 Split contrib module into config-store and tools
Mitch Watrous <watrous@u.washington.edu>
parents:
diff changeset
    58
    bld.ns3_python_bindings()