build: CMake refactoring

Includes:
- refactor build_lib and build_lib_example macros
    - unify src and contrib macros
    - replace macro with function not to leak definitions
    - parse list of arguments
- different cmake-format file for modules to list one item per line
This commit is contained in:
Gabriel Ferreira
2022-01-27 11:40:41 -03:00
parent d470fb77d4
commit 41aacec626
108 changed files with 2716 additions and 2704 deletions

View File

@@ -5,7 +5,8 @@ if(${ENABLE_EXAMPLES})
foreach(examplefolder ${examples_to_build})
add_subdirectory(${examplefolder})
set(ns3-example-folders "${examplefolder};${ns3-example-folders}"
set(ns3-example-folders
"${examplefolder};${ns3-example-folders}"
CACHE INTERNAL "list of example folders"
)
endforeach()

View File

@@ -1,9 +1,11 @@
set(name three-gpp-v2v-channel-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libmobility} ${libpropagation}
${libspectrum} ${libantenna} ${libbuildings}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME three-gpp-v2v-channel-example
SOURCE_FILES three-gpp-v2v-channel-example.cc
LIBRARIES_TO_LINK
${libcore}
${libmobility}
${libpropagation}
${libspectrum}
${libantenna}
${libbuildings}
)

View File

@@ -1,19 +1,23 @@
set(name energy-model-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libmobility} ${libwifi} ${libenergy}
${libinternet} ${libconfig-store}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME energy-model-example
SOURCE_FILES energy-model-example.cc
LIBRARIES_TO_LINK
${libcore}
${libmobility}
${libwifi}
${libenergy}
${libinternet}
${libconfig-store}
)
set(name energy-model-with-harvesting-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libmobility} ${libwifi} ${libenergy}
${libinternet} ${libconfig-store}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME energy-model-with-harvesting-example
SOURCE_FILES energy-model-with-harvesting-example.cc
LIBRARIES_TO_LINK
${libcore}
${libmobility}
${libwifi}
${libenergy}
${libinternet}
${libconfig-store}
)

View File

@@ -1,7 +1,8 @@
set(name simple-error-model)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME simple-error-model
SOURCE_FILES simple-error-model.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
)

View File

@@ -1,83 +1,90 @@
set(name fragmentation-ipv6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME fragmentation-ipv6
SOURCE_FILES fragmentation-ipv6.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name fragmentation-ipv6-two-MTU)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME fragmentation-ipv6-two-MTU
SOURCE_FILES fragmentation-ipv6-two-MTU.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name icmpv6-redirect)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME icmpv6-redirect
SOURCE_FILES icmpv6-redirect.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name loose-routing-ipv6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME loose-routing-ipv6
SOURCE_FILES loose-routing-ipv6.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name ping6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME ping6
SOURCE_FILES ping6.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name radvd)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME radvd
SOURCE_FILES radvd.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name radvd-two-prefix)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME radvd-two-prefix
SOURCE_FILES radvd-two-prefix.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name test-ipv6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libinternet})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME test-ipv6
SOURCE_FILES test-ipv6.cc
LIBRARIES_TO_LINK ${libpoint-to-point}
${libinternet}
)
set(name wsn-ping6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${liblr-wpan} ${libinternet} ${libsixlowpan}
${libmobility} ${libinternet-apps}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wsn-ping6
SOURCE_FILES wsn-ping6.cc
LIBRARIES_TO_LINK
${liblr-wpan}
${libinternet}
${libsixlowpan}
${libmobility}
${libinternet-apps}
)
set(name fragmentation-ipv6-PMTU)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps}
${libpoint-to-point}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME fragmentation-ipv6-PMTU
SOURCE_FILES fragmentation-ipv6-PMTU.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
${libpoint-to-point}
)

View File

@@ -1,9 +1,11 @@
set(name matrix-topology)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libnetwork} ${libnetanim} ${libmobility}
${libpoint-to-point} ${libinternet} ${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME matrix-topology
SOURCE_FILES matrix-topology.cc
LIBRARIES_TO_LINK
${libnetwork}
${libnetanim}
${libmobility}
${libpoint-to-point}
${libinternet}
${libapplications}
)

View File

@@ -1,7 +1,14 @@
set(name object-names)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libcsma} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
set(name
object-names
)
set(libraries_to_link)
build_example(
NAME object-names
SOURCE_FILES object-names.cc
LIBRARIES_TO_LINK
${libcore}
${libcsma}
${libinternet}
${libapplications}
)

View File

@@ -1,9 +1,10 @@
if(${ENABLE_REALTIME})
set(name realtime-udp-echo)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME realtime-udp-echo
SOURCE_FILES realtime-udp-echo.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libapplications}
)
endif()

View File

@@ -1,83 +1,90 @@
set(name dynamic-global-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libcsma} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME dynamic-global-routing
SOURCE_FILES dynamic-global-routing.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libcsma}
${libinternet}
${libapplications}
)
set(name static-routing-slash32)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libcsma} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME static-routing-slash32
SOURCE_FILES static-routing-slash32.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libcsma}
${libinternet}
${libapplications}
)
set(name global-routing-slash32)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libcsma} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME global-routing-slash32
SOURCE_FILES global-routing-slash32.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libcsma}
${libinternet}
${libapplications}
)
set(name global-injection-slash32)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libcsma} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME global-injection-slash32
SOURCE_FILES global-injection-slash32.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libcsma}
${libinternet}
${libapplications}
)
set(name simple-global-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications}
${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
set(name
simple-global-routing
)
set(name simple-alternate-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications})
set(libraries_to_link)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME simple-global-routing
SOURCE_FILES simple-global-routing.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
${libflow-monitor}
)
set(name mixed-global-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libcsma}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME simple-alternate-routing
SOURCE_FILES simple-alternate-routing.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
)
set(name simple-routing-ping6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME mixed-global-routing
SOURCE_FILES mixed-global-routing.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libcsma}
${libapplications}
)
set(name manet-routing-compare)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
build_example(
NAME simple-routing-ping6
SOURCE_FILES simple-routing-ping6.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
build_example(
NAME manet-routing-compare
SOURCE_FILES manet-routing-compare.cc
LIBRARIES_TO_LINK
${libwifi}
${libdsr}
${libdsdv}
@@ -86,30 +93,29 @@ set(libraries_to_link
${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME ripng-simple-network
SOURCE_FILES ripng-simple-network.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name ripng-simple-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME rip-simple-network
SOURCE_FILES rip-simple-network.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libinternet-apps}
)
set(name rip-simple-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libinternet-apps})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
)
set(name global-routing-multi-switch-plus-router)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
NAME global-routing-multi-switch-plus-router
SOURCE_FILES global-routing-multi-switch-plus-router.cc
LIBRARIES_TO_LINK
${libcore}
${libnetwork}
${libapplications}
@@ -120,16 +126,13 @@ set(libraries_to_link
${libcsma}
${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
)
set(name simple-multicast-flooding)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libnetwork} ${libapplications}
${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME simple-multicast-flooding
SOURCE_FILES simple-multicast-flooding.cc
LIBRARIES_TO_LINK
${libcore}
${libnetwork}
${libapplications}
${libinternet}
)

View File

@@ -1,39 +1,40 @@
set(name socket-bound-static-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libnetwork} ${libcsma} ${libpoint-to-point}
${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME socket-bound-static-routing
SOURCE_FILES socket-bound-static-routing.cc
LIBRARIES_TO_LINK
${libnetwork}
${libcsma}
${libpoint-to-point}
${libinternet}
)
set(name socket-bound-tcp-static-routing)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libnetwork} ${libcsma} ${libpoint-to-point}
${libinternet} ${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME socket-bound-tcp-static-routing
SOURCE_FILES socket-bound-tcp-static-routing.cc
LIBRARIES_TO_LINK
${libnetwork}
${libcsma}
${libpoint-to-point}
${libinternet}
${libapplications}
)
set(name socket-options-ipv4)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libnetwork} ${libcsma} ${libpoint-to-point}
${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME socket-options-ipv4
SOURCE_FILES socket-options-ipv4.cc
LIBRARIES_TO_LINK
${libnetwork}
${libcsma}
${libpoint-to-point}
${libinternet}
)
set(name socket-options-ipv6)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libnetwork} ${libcsma} ${libpoint-to-point}
${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME socket-options-ipv6
SOURCE_FILES socket-options-ipv6.cc
LIBRARIES_TO_LINK
${libnetwork}
${libcsma}
${libpoint-to-point}
${libinternet}
)

View File

@@ -1,7 +1,11 @@
set(name wifi-example-sim)
set(source_files ${name}.cc wifi-example-apps.cc)
set(header_files wifi-example-apps.h)
set(libraries_to_link ${libstats} ${libinternet} ${libmobility} ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-example-sim
SOURCE_FILES wifi-example-sim.cc
wifi-example-apps.cc
HEADER_FILES wifi-example-apps.h
LIBRARIES_TO_LINK
${libstats}
${libinternet}
${libmobility}
${libwifi}
)

View File

@@ -1,30 +1,36 @@
set(name tcp-large-transfer)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libapplications} ${libinternet})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-large-transfer
SOURCE_FILES tcp-large-transfer.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libapplications}
${libinternet}
)
set(name tcp-star-server)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libapplications} ${libinternet})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-star-server
SOURCE_FILES tcp-star-server.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libapplications}
${libinternet}
)
set(name star)
set(source_files ${name}.cc)
set(libraries_to_link
${libnetanim} ${libpoint-to-point} ${libpoint-to-point-layout}
${libapplications} ${libinternet}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME star
SOURCE_FILES star.cc
LIBRARIES_TO_LINK
${libnetanim}
${libpoint-to-point}
${libpoint-to-point-layout}
${libapplications}
${libinternet}
)
set(name tcp-bbr-example)
set(source_files ${name}.cc)
set(libraries_to_link
build_example(
NAME tcp-bbr-example
SOURCE_FILES tcp-bbr-example.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
@@ -33,66 +39,76 @@ set(libraries_to_link
${libinternet-apps}
${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-bulk-send
SOURCE_FILES tcp-bulk-send.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libapplications}
${libinternet}
)
set(name tcp-bulk-send)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libapplications} ${libinternet})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-pcap-nanosec-example
SOURCE_FILES tcp-pcap-nanosec-example.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libapplications}
${libinternet}
)
set(name tcp-pcap-nanosec-example)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libapplications} ${libinternet})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-variants-comparison
SOURCE_FILES tcp-variants-comparison.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
${libflow-monitor}
)
set(name tcp-variants-comparison)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications}
${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-pacing
SOURCE_FILES tcp-pacing.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
${libflow-monitor}
)
set(name tcp-pacing)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications}
${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-linux-reno
SOURCE_FILES tcp-linux-reno.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
${libtraffic-control}
${libnetwork}
)
set(name tcp-linux-reno)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications}
${libtraffic-control} ${libnetwork}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tcp-validation
SOURCE_FILES tcp-validation.cc
LIBRARIES_TO_LINK
${libpoint-to-point}
${libinternet}
${libapplications}
${libtraffic-control}
${libnetwork}
${libinternet-apps}
)
set(name tcp-validation)
set(source_files ${name}.cc)
set(libraries_to_link ${libpoint-to-point} ${libinternet} ${libapplications}
${libtraffic-control} ${libnetwork} ${libinternet-apps}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
)
set(name dctcp-example)
set(source_files ${name}.cc)
set(libraries_to_link
${libcore} ${libnetwork} ${libinternet} ${libpoint-to-point}
${libapplications} ${libtraffic-control}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME dctcp-example
SOURCE_FILES dctcp-example.cc
LIBRARIES_TO_LINK
${libcore}
${libnetwork}
${libinternet}
${libpoint-to-point}
${libapplications}
${libtraffic-control}
)

View File

@@ -1,62 +1,64 @@
set(name traffic-control)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libpoint-to-point} ${libapplications}
${libtraffic-control} ${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME traffic-control
SOURCE_FILES traffic-control.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libapplications}
${libtraffic-control}
${libflow-monitor}
)
set(name queue-discs-benchmark)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
${libinternet} ${libpoint-to-point} ${libapplications} ${libinternet-apps}
${libtraffic-control} ${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME queue-discs-benchmark
SOURCE_FILES queue-discs-benchmark.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libapplications}
${libinternet-apps}
${libtraffic-control}
${libflow-monitor}
)
set(name red-vs-fengadaptive)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
${libinternet} ${libpoint-to-point} ${libpoint-to-point-layout}
${libapplications} ${libtraffic-control}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME red-vs-fengadaptive
SOURCE_FILES red-vs-fengadaptive.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libpoint-to-point-layout}
${libapplications}
${libtraffic-control}
)
set(name red-vs-nlred)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
${libinternet} ${libpoint-to-point} ${libpoint-to-point-layout}
${libapplications} ${libtraffic-control}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME red-vs-nlred
SOURCE_FILES red-vs-nlred.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libpoint-to-point-layout}
${libapplications}
${libtraffic-control}
)
set(name tbf-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libpoint-to-point} ${libapplications}
${libtraffic-control}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME tbf-example
SOURCE_FILES tbf-example.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libapplications}
${libtraffic-control}
)
set(name cobalt-vs-codel)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libpoint-to-point} ${libapplications}
${libtraffic-control}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME cobalt-vs-codel
SOURCE_FILES cobalt-vs-codel.cc
LIBRARIES_TO_LINK
${libinternet}
${libpoint-to-point}
${libapplications}
${libtraffic-control}
)

View File

@@ -1,75 +1,75 @@
set(name hello-simulator)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME hello-simulator
SOURCE_FILES hello-simulator.cc
LIBRARIES_TO_LINK ${libcore}
)
set(name first)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libpoint-to-point} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME first
SOURCE_FILES first.cc
LIBRARIES_TO_LINK
${libcore}
${libpoint-to-point}
${libinternet}
${libapplications}
)
set(name second)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libpoint-to-point} ${libcsma} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME second
SOURCE_FILES second.cc
LIBRARIES_TO_LINK
${libcore}
${libpoint-to-point}
${libcsma}
${libinternet}
${libapplications}
)
set(name third)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libpoint-to-point} ${libcsma} ${libwifi}
${libinternet} ${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME third
SOURCE_FILES third.cc
LIBRARIES_TO_LINK
${libcore}
${libpoint-to-point}
${libcsma}
${libwifi}
${libinternet}
${libapplications}
)
set(name fourth)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME fourth
SOURCE_FILES fourth.cc
LIBRARIES_TO_LINK ${libcore}
)
set(name fifth)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libpoint-to-point} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME fifth
SOURCE_FILES fifth.cc
LIBRARIES_TO_LINK
${libcore}
${libpoint-to-point}
${libinternet}
${libapplications}
)
set(name sixth)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libpoint-to-point} ${libinternet}
${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME sixth
SOURCE_FILES sixth.cc
LIBRARIES_TO_LINK
${libcore}
${libpoint-to-point}
${libinternet}
${libapplications}
)
set(name seventh)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libstats} ${libpoint-to-point}
${libinternet} ${libapplications}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME seventh
SOURCE_FILES seventh.cc
LIBRARIES_TO_LINK
${libcore}
${libstats}
${libpoint-to-point}
${libinternet}
${libapplications}
)

View File

@@ -1,15 +1,17 @@
set(name udp-client-server)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME udp-client-server
SOURCE_FILES udp-client-server.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libapplications}
)
set(name udp-trace-client-server)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME udp-trace-client-server
SOURCE_FILES udp-trace-client-server.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libapplications}
)

View File

@@ -1,7 +1,8 @@
set(name udp-echo)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcsma} ${libinternet} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME udp-echo
SOURCE_FILES udp-echo.cc
LIBRARIES_TO_LINK
${libcsma}
${libinternet}
${libapplications}
)

View File

@@ -1,315 +1,287 @@
set(name mixed-wired-wireless)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications} ${libolsr} ${libnetanim})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME mixed-wired-wireless
SOURCE_FILES mixed-wired-wireless.cc
LIBRARIES_TO_LINK
${libwifi}
${libapplications}
${libolsr}
${libnetanim}
)
set(name wifi-80211e-txop)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-80211e-txop
SOURCE_FILES wifi-80211e-txop.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-80211n-mimo)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-80211n-mimo
SOURCE_FILES wifi-80211n-mimo.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-adhoc)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-adhoc
SOURCE_FILES wifi-adhoc.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-aggregation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-aggregation
SOURCE_FILES wifi-aggregation.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-ap)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ap
SOURCE_FILES wifi-ap.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-backward-compatibility)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-backward-compatibility
SOURCE_FILES wifi-backward-compatibility.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-blockack)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-blockack
SOURCE_FILES wifi-blockack.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-clear-channel-cmu)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-clear-channel-cmu
SOURCE_FILES wifi-clear-channel-cmu.cc
LIBRARIES_TO_LINK ${libinternet}
${libwifi}
)
set(name wifi-dsss-validation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-dsss-validation
SOURCE_FILES wifi-dsss-validation.cc
LIBRARIES_TO_LINK ${libwifi}
)
set(name wifi-he-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-he-network
SOURCE_FILES wifi-he-network.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-hidden-terminal)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications} ${libflow-monitor})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-hidden-terminal
SOURCE_FILES wifi-hidden-terminal.cc
LIBRARIES_TO_LINK
${libwifi}
${libapplications}
${libflow-monitor}
)
set(name wifi-ht-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ht-network
SOURCE_FILES wifi-ht-network.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-mixed-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-mixed-network
SOURCE_FILES wifi-mixed-network.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-multi-tos)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-multi-tos
SOURCE_FILES wifi-multi-tos.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-multirate)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi} ${libolsr} ${libapplications}
${libflow-monitor}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-multirate
SOURCE_FILES wifi-multirate.cc
LIBRARIES_TO_LINK
${libinternet}
${libwifi}
${libolsr}
${libapplications}
${libflow-monitor}
)
set(name wifi-ofdm-he-validation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ofdm-he-validation
SOURCE_FILES wifi-ofdm-he-validation.cc
LIBRARIES_TO_LINK ${libwifi}
)
set(name wifi-ofdm-ht-validation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ofdm-ht-validation
SOURCE_FILES wifi-ofdm-ht-validation.cc
LIBRARIES_TO_LINK ${libwifi}
)
set(name wifi-ofdm-validation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ofdm-validation
SOURCE_FILES wifi-ofdm-validation.cc
LIBRARIES_TO_LINK ${libwifi}
)
set(name wifi-ofdm-vht-validation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libmobility} ${libwifi} ${libconfig-store}
${libstats}
)
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-ofdm-vht-validation
SOURCE_FILES wifi-ofdm-vht-validation.cc
LIBRARIES_TO_LINK
${libcore}
${libmobility}
${libwifi}
${libconfig-store}
${libstats}
)
set(name wifi-error-models-comparison)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-error-models-comparison
SOURCE_FILES wifi-error-models-comparison.cc
LIBRARIES_TO_LINK ${libwifi}
)
set(name wifi-power-adaptation-distance)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-power-adaptation-distance
SOURCE_FILES wifi-power-adaptation-distance.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-power-adaptation-interference)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications} ${libflow-monitor})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-power-adaptation-interference
SOURCE_FILES wifi-power-adaptation-interference.cc
LIBRARIES_TO_LINK
${libwifi}
${libapplications}
${libflow-monitor}
)
set(name wifi-rate-adaptation-distance)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-rate-adaptation-distance
SOURCE_FILES wifi-rate-adaptation-distance.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-simple-adhoc)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-simple-adhoc
SOURCE_FILES wifi-simple-adhoc.cc
LIBRARIES_TO_LINK ${libinternet}
${libwifi}
)
set(name wifi-simple-adhoc-grid)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi} ${libolsr})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-simple-adhoc-grid
SOURCE_FILES wifi-simple-adhoc-grid.cc
LIBRARIES_TO_LINK
${libinternet}
${libwifi}
${libolsr}
)
set(name wifi-simple-ht-hidden-stations)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-simple-ht-hidden-stations
SOURCE_FILES wifi-simple-ht-hidden-stations.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-simple-infra)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-simple-infra
SOURCE_FILES wifi-simple-infra.cc
LIBRARIES_TO_LINK ${libinternet}
${libwifi}
)
set(name wifi-simple-interference)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libinternet} ${libwifi})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-simple-interference
SOURCE_FILES wifi-simple-interference.cc
LIBRARIES_TO_LINK ${libinternet}
${libwifi}
)
set(name wifi-sleep)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-sleep
SOURCE_FILES wifi-sleep.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-spatial-reuse)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-spatial-reuse
SOURCE_FILES wifi-spatial-reuse.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-spectrum-per-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-spectrum-per-example
SOURCE_FILES wifi-spectrum-per-example.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-spectrum-per-interference)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-spectrum-per-interference
SOURCE_FILES wifi-spectrum-per-interference.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-spectrum-saturation-example)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-spectrum-saturation-example
SOURCE_FILES wifi-spectrum-saturation-example.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-tcp)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-tcp
SOURCE_FILES wifi-tcp.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-timing-attributes)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-timing-attributes
SOURCE_FILES wifi-timing-attributes.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-txop-aggregation)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-txop-aggregation
SOURCE_FILES wifi-txop-aggregation.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-vht-network)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-vht-network
SOURCE_FILES wifi-vht-network.cc
LIBRARIES_TO_LINK ${libwifi}
${libapplications}
)
set(name wifi-wired-bridging)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libwifi} ${libcsma} ${libbridge} ${libapplications})
build_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wifi-wired-bridging
SOURCE_FILES wifi-wired-bridging.cc
LIBRARIES_TO_LINK
${libwifi}
${libcsma}
${libbridge}
${libapplications}
)