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

@@ -1,6 +1,6 @@
set(name wave)
set(source_files
build_lib(
LIBNAME wave
SOURCE_FILES
helper/wave-bsm-helper.cc
helper/wave-bsm-stats.cc
helper/wave-helper.cc
@@ -17,9 +17,7 @@ set(source_files
model/vsa-manager.cc
model/wave-frame-exchange-manager.cc
model/wave-net-device.cc
)
set(header_files
HEADER_FILES
helper/wave-bsm-helper.h
helper/wave-bsm-stats.h
helper/wave-helper.h
@@ -36,12 +34,11 @@ set(header_files
model/vsa-manager.h
model/wave-frame-exchange-manager.h
model/wave-net-device.h
)
set(libraries_to_link ${libcore} ${libpropagation} ${libwifi} ${libinternet})
set(test_sources test/mac-extension-test-suite.cc test/ocb-test-suite.cc)
build_lib("${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
"${test_sources}"
LIBRARIES_TO_LINK
${libcore}
${libpropagation}
${libwifi}
${libinternet}
TEST_SOURCES test/mac-extension-test-suite.cc
test/ocb-test-suite.cc
)

View File

@@ -1,27 +1,31 @@
set(name wave-simple-80211p)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libapplications} ${libmobility}
${libnetwork} ${libwifi} ${libwave}
)
build_lib_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wave-simple-80211p
SOURCE_FILES wave-simple-80211p.cc
LIBRARIES_TO_LINK
${libcore}
${libapplications}
${libmobility}
${libnetwork}
${libwifi}
${libwave}
)
set(name wave-simple-device)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link ${libcore} ${libapplications} ${libmobility}
${libnetwork} ${libwifi} ${libwave}
)
build_lib_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
NAME wave-simple-device
SOURCE_FILES wave-simple-device.cc
LIBRARIES_TO_LINK
${libcore}
${libapplications}
${libmobility}
${libnetwork}
${libwifi}
${libwave}
)
set(name vanet-routing-compare)
set(source_files ${name}.cc)
set(header_files)
set(libraries_to_link
build_lib_example(
NAME vanet-routing-compare
SOURCE_FILES vanet-routing-compare.cc
LIBRARIES_TO_LINK
${libcore}
${libaodv}
${libapplications}
@@ -35,6 +39,3 @@ set(libraries_to_link
${libwifi}
${libwave}
)
build_lib_example(
"${name}" "${source_files}" "${header_files}" "${libraries_to_link}"
)