blob: 5162d3f4445227ae60f9ba39e19ac1ab50813db7 [file] [log] [blame]
Alexander Afanasyevc9f2e252013-07-14 15:35:21 -07001## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
2#
3# Copyright (c) 2011-2013, Regents of the University of California
4# Alexander Afanasyev
5#
6# GNU 3.0 license, See the LICENSE file for more information
7#
8# Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
9#
Alexander Afanasyevf04d4512012-02-14 18:42:47 -080010
11def build(bld):
Alexander Afanasyevc3866442013-05-05 21:56:46 -070012 # This may be necessary for visualizer to work
13 all_modules = [mod[len("ns3-"):] for mod in bld.env['NS3_ENABLED_MODULES']]
14
15 obj = bld.create_ns3_program('ndn-simple', all_modules)
Alexander Afanasyev4aac5572012-08-09 10:49:55 -070016 obj.source = 'ndn-simple.cc'
Alexander Afanasyevf04d4512012-02-14 18:42:47 -080017
Alexander Afanasyevfff84982013-05-30 09:19:46 -070018 obj = bld.create_ns3_program('ndn-csma', all_modules)
19 obj.source = 'ndn-csma.cc'
20
Alexander Afanasyevc3866442013-05-05 21:56:46 -070021 obj = bld.create_ns3_program('ndn-grid', all_modules)
Alexander Afanasyev4aac5572012-08-09 10:49:55 -070022 obj.source = 'ndn-grid.cc'
Alexander Afanasyev1fb9fed2013-02-01 23:18:04 -080023
Alexander Afanasyevc3866442013-05-05 21:56:46 -070024 obj = bld.create_ns3_program('ndn-zipf-mandelbrot', all_modules)
Alexander Afanasyev13800102012-12-25 00:30:31 -080025 obj.source = 'ndn-zipf-mandelbrot.cc'
Alexander Afanasyev1fb9fed2013-02-01 23:18:04 -080026
Shockebebcda2012-12-25 14:25:58 +080027
Alexander Afanasyevc3866442013-05-05 21:56:46 -070028 obj = bld.create_ns3_program('ndn-simple-with-content-freshness', all_modules)
Alexander Afanasyevc3cc0b32012-12-12 18:41:20 -080029 obj.source = ['ndn-simple-with-content-freshness.cc',
30 'custom-apps/dumb-requester.cc']
31
Alexander Afanasyevc3866442013-05-05 21:56:46 -070032 obj = bld.create_ns3_program('ndn-simple-with-custom-app', all_modules)
Alexander Afanasyev68de7952012-12-12 18:02:29 -080033 obj.source = ['ndn-simple-with-custom-app.cc',
Alexander Afanasyevc3cc0b32012-12-12 18:41:20 -080034 'custom-apps/custom-app.cc',
35 'custom-apps/hijacker.cc']
Alexander Afanasyev68de7952012-12-12 18:02:29 -080036
Alexander Afanasyevaa1c4c32012-11-21 16:17:03 -080037 if 'topology' in bld.env['NDN_plugins']:
Alexander Afanasyevc3866442013-05-05 21:56:46 -070038 obj = bld.create_ns3_program('ndn-grid-topo-plugin', all_modules)
Alexander Afanasyevaa1c4c32012-11-21 16:17:03 -080039 obj.source = 'ndn-grid-topo-plugin.cc'
40
Alexander Afanasyevc3866442013-05-05 21:56:46 -070041 obj = bld.create_ns3_program('ndn-grid-topo-plugin-loss', all_modules)
Alexander Afanasyevda2f23a2013-04-14 22:52:50 -070042 obj.source = 'ndn-grid-topo-plugin-loss.cc'
43
Alexander Afanasyev0aa11362013-07-14 15:35:00 -070044 obj = bld.create_ns3_program('ndn-grid-topo-plugin-red-queues', all_modules)
45 obj.source = 'ndn-grid-topo-plugin-red-queues.cc'
46
Alexander Afanasyevc3866442013-05-05 21:56:46 -070047 obj = bld.create_ns3_program('ndn-congestion-topo-plugin', all_modules)
Alexander Afanasyevaa1c4c32012-11-21 16:17:03 -080048 obj.source = 'ndn-congestion-topo-plugin.cc'
Alexander Afanasyeve97c6072012-11-21 23:51:12 -080049
Alexander Afanasyevc3866442013-05-05 21:56:46 -070050 obj = bld.create_ns3_program('ndn-congestion-alt-topo-plugin', all_modules)
Alexander Afanasyeve97c6072012-11-21 23:51:12 -080051 obj.source = [
52 'custom-strategies/custom-strategy.cc',
53 'ndn-congestion-alt-topo-plugin.cc'
54 ]
Alexander Afanasyev59314802012-11-26 14:56:04 -080055
Alexander Afanasyevc3866442013-05-05 21:56:46 -070056 obj = bld.create_ns3_program('ndn-tree-tracers', all_modules)
Alexander Afanasyev59314802012-11-26 14:56:04 -080057 obj.source = 'ndn-tree-tracers.cc'
Alexander Afanasyevf4a03592012-12-10 16:12:34 -080058
Alexander Afanasyevc3866442013-05-05 21:56:46 -070059 obj = bld.create_ns3_program('ndn-tree-cs-tracers', all_modules)
Alexander Afanasyevf4a03592012-12-10 16:12:34 -080060 obj.source = 'ndn-tree-cs-tracers.cc'
Alexander Afanasyevdb64ff12013-01-18 16:37:31 -080061
Alexander Afanasyevc3866442013-05-05 21:56:46 -070062 obj = bld.create_ns3_program('ndn-tree-app-delay-tracer', all_modules)
Alexander Afanasyevdb64ff12013-01-18 16:37:31 -080063 obj.source = 'ndn-tree-app-delay-tracer.cc'
Alexander Afanasyev1fb9fed2013-02-01 23:18:04 -080064
Alexander Afanasyevc3866442013-05-05 21:56:46 -070065 obj = bld.create_ns3_program('ndn-tree-with-l2tracer', all_modules)
Alexander Afanasyev27370c52013-03-12 13:54:08 -070066 obj.source = 'ndn-tree-with-l2tracer.cc'
67
Alexander Afanasyevc7411ee2013-06-10 10:54:54 -070068 obj = bld.create_ns3_program('ndn-triangle-calculate-routes', all_modules)
69 obj.source = 'ndn-triangle-calculate-routes.cc'
70
Alexander Afanasyevc3866442013-05-05 21:56:46 -070071 obj = bld.create_ns3_program('ndn-simple-pit-policies', all_modules)
Alexander Afanasyev1fb9fed2013-02-01 23:18:04 -080072 obj.source = 'ndn-simple-pit-policies.cc'
Alexander Afanasyev4c6bc582013-02-07 10:13:48 -080073
Alexander Afanasyevc3866442013-05-05 21:56:46 -070074 obj = bld.create_ns3_program('ndn-simple-with-different-sizes-content-store', all_modules)
Alexander Afanasyev4c6bc582013-02-07 10:13:48 -080075 obj.source = 'ndn-simple-with-different-sizes-content-store.cc'
Alexander Afanasyev41684ab2013-02-19 11:02:37 -080076
Alexander Afanasyevc3866442013-05-05 21:56:46 -070077 obj = bld.create_ns3_program('ndn-simple-with-cs-lfu', all_modules)
Alexander Afanasyev41684ab2013-02-19 11:02:37 -080078 obj.source = 'ndn-simple-with-cs-lfu.cc'
Alexander Afanasyev1ab1aad2013-02-28 11:32:21 -080079
Alexander Afanasyevc3866442013-05-05 21:56:46 -070080 obj = bld.create_ns3_program('ndn-simple-with-pcap', all_modules)
Alexander Afanasyev1ab1aad2013-02-28 11:32:21 -080081 obj.source = 'ndn-simple-with-pcap.cc'
Alexander Afanasyev4ebe07e2013-03-26 13:27:55 -070082
Alexander Afanasyevc3866442013-05-05 21:56:46 -070083 obj = bld.create_ns3_program('ndn-simple-with-pit-operation-stats', all_modules)
Alexander Afanasyev4ebe07e2013-03-26 13:27:55 -070084 obj.source = 'ndn-simple-with-pit-operation-stats.cc'
Alexander Afanasyevb5e77d82013-04-10 15:55:26 -070085
Alexander Afanasyevc3866442013-05-05 21:56:46 -070086 obj = bld.create_ns3_program('ndn-simple-with-pit-count-stats', all_modules)
Alexander Afanasyevb5e77d82013-04-10 15:55:26 -070087 obj.source = 'ndn-simple-with-pit-count-stats.cc'
Alexander Afanasyev79a5bd62013-06-23 22:12:39 -070088
89 obj = bld.create_ns3_program('ndn-simple-api', all_modules)
90 obj.source = [
91 'ndn-simple-api.cc',
92 'custom-apps/ndn-api-app.cc'
93 ]
Alexander Afanasyev0fb80b92013-07-20 08:20:50 -070094
95 obj = bld.create_ns3_program('ndn-simple-with-link-failure', all_modules)
96 obj.source = 'ndn-simple-with-link-failure.cc'
Alexander Afanasyevf4e24522013-06-24 14:11:57 -070097
98 if 'ip-faces' in bld.env['NDN_plugins']:
99 obj = bld.create_ns3_program('ndn-simple-tcp', all_modules)
100 obj.source = 'ndn-simple-tcp.cc'
Alexander Afanasyevd573af22013-07-27 12:57:08 -0700101
102 obj = bld.create_ns3_program('ndn-simple-udp', all_modules)
103 obj.source = 'ndn-simple-udp.cc'
Alexander Afanasyev0d584e32013-08-13 10:41:42 -0700104
105
106 if 'ns3-wifi' in bld.env['NS3_ENABLED_MODULES']:
107 obj = bld.create_ns3_program('ndn-simple-wifi', all_modules)
108 obj.source = 'ndn-simple-wifi.cc'