Commit Graph

1549 Commits

Author SHA1 Message Date
Gabriel Ferreira
41aacec626 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
2022-01-28 10:20:18 -03:00
Tommaso Pecorella
e1e07f2ffd core: skip results checking when introspecting the command line 2022-01-27 17:28:38 -03:00
Gabriel Ferreira
33f2ee841b doc: update ns3 API 2022-01-19 16:25:03 -03:00
Gabriel Ferreira
e41e16c799 core: Reuse a global hasher instance 2022-01-15 01:09:28 +00:00
Gabriel Ferreira
ff3b511384 build: Bugfixes and refactoring of ns3 and CMake
Including:
- add missing command for introspected doxygen
- run get_version.sh before running doxygen
- use find_package(Doxygen) to get the doxygen executable
- silence python and sqlite find_package warnings
- return cmake returncode if configuration fails
- require GTK3 3.22
- link all libraries to print-introspected-doxygen
- replace shell with use_shell for variable name
- revert wrong changes to propagation of return codes and add test
- disable pch when ccache is found
- make --enable-sudo a post-build step and a runtime option
- add docs subparser
- add enable-sudo option
- refactor positional argument values
- fix --check option and add shell option
- replace --no-task-lines with --quiet
- replace --nowaf with --no-build
- replace --run --run-no-build with run (--no-build)
- replace ns3 documentation related arguments with targets
- document test-ns3.py
- export include directories used by ns3 libraries
- refactor CMake documentation dependency checking and behavior
- add --allow-run-as-root for running MPI examples on the CI
2022-01-09 02:48:53 -03:00
Peter Barnes
762494924e core: avoid GCC compiler error 2022-01-07 22:25:39 +00:00
Tommaso Pecorella
a8fc1b6235 doxygen: fix warnings in various modules 2022-01-05 00:22:31 -06:00
Ameya Deshpande
fcc095b05c core: Use std::invoke_result instead of std::result_of
C++17 introduces `std::invoke_result`, and deprecates
the usage of `std::result_of`.

Signed-off-by: Ameya Deshpande <ameyanrd@outlook.com>
2021-12-28 09:06:53 -08:00
Peter Barnes
3dd74f2017 core: refactor ObjectBase::ConstructSelf 2021-12-24 00:08:09 +00:00
Peter Barnes
7f3d883f75 core: fix doxy warnings 2021-12-21 17:06:57 +00:00
Peter Barnes
0e685cbdbb Use [[maybe_unused]] attribute directly, instead of NS_UNUSED 2021-12-21 10:32:43 +00:00
Peter Barnes
1d0c81dea4 core: pre-event hook, to facilitate chaining SimulatorImpls 2021-12-20 21:59:44 +00:00
Tom Henderson
aad79536bf bindings: Rescan all APIs 2021-12-18 16:41:52 -08:00
Eduardo Almeida
96ec88cd59 core: Remove NonCopyable class 2021-12-18 16:41:39 -08:00
Peter D. Barnes, Jr
9c5fec6697 Define NS_DEPRECATED_3_36 2021-12-17 17:24:11 +00:00
Peter D. Barnes, Jr
ccb21e8887 Use C++-14 [[deprecated (msg)]], convert NS_DEPRECATED to function macro 2021-12-17 17:24:11 +00:00
Peter Barnes
6f319e48fc core: (bugzilla 2203) MakeEvent from a lambda 2021-12-17 17:23:45 +00:00
Peter Barnes
4dc0ec0682 core: (fixes #141) Print parent attributes from CommandLine --PrintAttributes 2021-12-17 01:04:14 +00:00
Peter Barnes
dd1d254a9f core: html-encode in CommandLine::PrintDoxygenUsage 2021-12-16 23:32:15 +00:00
Peter Barnes
8b0d0e7044 core: symbolic names for EventId reserved Uid values 2021-12-13 23:04:15 +00:00
Peter Barnes
c333dbc0cd core: forward ScheduleNow(...) to Schedule(0, ...) 2021-12-10 22:41:33 +00:00
Gabriel Ferreira
f6ef415392 build: CMake bugfixes
Fixes include:
- Handling of relative paths used as output directories
- Accepting comma separated lists of modules to enable/disable
- Echoing all CMake commands at the end of the execution of ns3 script
- More informative optional features summary output
- Replace absolute paths with relative paths in the printed CMake output for less verbose output
- Set debug build type on the CMake side to ensure ccmake doesn't crash
- Prefix INT64X64 with NS3 to indicate user switch
- Compiler version check
- Removal of verbose option
- Suppress empty enabled/disabled module tables

Features include:
- Test for installation/uninstallation of ns-3 as a CMake package
- Test importing ns-3 as a CMake package and use in a 3rd-party project
- Test to check VERSION usage
- ns3 option to enable/disable sanitizers
- Associate headers to libraries targets
2021-12-10 02:13:43 +00:00
Tommaso Pecorella
deaec64d36 core: remove NS_TEST_*_INTERNAL 2021-12-09 01:25:52 +00:00
Stefano Avallone
6ec6fc2eb6 core: Add an attribute value storing a std::tuple 2021-12-06 10:49:40 +01:00
Gabriel Ferreira
a893eba7e3 build: Fix CMake and ns3 script bugs, add a test suite and fix formatting 2021-12-05 21:53:49 +00:00
Peter D. Barnes, Jr
1dc223f85a core: mark event impl function typedefs as maybe_unused 2021-12-02 21:00:50 +00:00
Gabriel Ferreira
3c604d5b2e Update docs with CMake and ns3 wrapper 2021-12-01 12:29:56 -08:00
Gabriel Ferreira
9c876c7f5a CMake buildsystem 2021-12-01 12:29:55 -08:00
Tommaso Pecorella
3ec15efca2 core: fix some doxygen warnings 2021-11-25 00:17:52 +01:00
Eduardo Almeida
574b8b6c64 build: Remove duplicate header checking 2021-11-18 11:59:57 -08:00
Eduardo Almeida
5dc117216a Fix doxygen warning 2021-11-04 14:19:29 -07:00
Eduardo Almeida
a2efceffb2 Simplify trivial bool statements 2021-11-04 14:19:29 -07:00
Tommaso Pecorella
d1169d40ad core: fix some doxygen warnings 2021-10-24 17:14:32 +02:00
Tom Henderson
4e9afa965d bindings: Rescan all APIs 2021-09-27 11:18:37 -07:00
Alexander Krotov
d8fe6bac00 core: (merges !623) Print available values on EnumChecker::GetValue () error 2021-09-25 12:42:23 -07:00
Peter D. Barnes, Jr
7c48447ffa core: Add hashing functor for creating hash of a Ptr 2021-09-15 22:01:48 +02:00
Tommaso Pecorella
dbb8b67ad8 core (fixes #452) Add TracedCallback::IsEmpty 2021-09-01 04:13:57 +02:00
Tommaso Pecorella
73a14518e7 core: (fixes #444) Remove Pareto::Mean attribute 2021-08-30 20:57:24 +00:00
Tommaso Pecorella
6ed23c3ae1 core: (fixes #445) update doc for Timer::State 2021-08-23 19:52:57 +00:00
Tom Henderson
7f90de5f31 core: Fix two typos (reported by Gabriel Arrobo) 2021-08-20 14:40:41 -07:00
Michael Scoggin
0f3fbffcd7 core: (merges !621) Add DistanceSquared and LengthSquared methods to Vectors
Complements existing methods to avoid unnecessary square roots in some cases
2021-08-18 20:56:40 -07:00
Michael Scoggin
a02b47a08a core: (merges !620) add operator to ptr to facilitate std alg 2021-08-18 16:22:55 -07:00
Tom Henderson
f1f2877c81 core: Update deprecation macro definitions 2021-07-31 07:48:30 -07:00
Stefano Avallone
ac6c4c2e69 core: Create<>() forwards parameters to constructors
Just like CreateObject does.
2021-07-22 07:29:42 +00:00
Peter D. Barnes, Jr
09d2a6e9c6 build: (fixes #52) Fix and standardize boost detection 2021-06-17 12:09:25 -07:00
Tommaso Pecorella
e2f1ff084b core: fix doxygen warnings 2021-05-01 00:19:55 +02:00
Steven Smith
bbcea3e502 core: (fixes #387) Fix MakeCallbackAccessor compilation error
Use more specific properties of containers to identify containers for specialization
2021-04-20 10:11:05 -07:00
Tom Henderson
db97b88195 core: Add missing include 2021-04-18 17:55:30 -07:00
Tommaso Pecorella
b6ee0842ac internet: deprecate Icmpv6RA::[G,S]etFlags 2021-03-19 01:11:00 +00:00
Tom Henderson
a3d5b5a971 bindings: Rescan APIs for core, mesh, netanim, spectrum, wave, wifi 2021-03-10 16:21:44 -08:00