Commit Graph

307 Commits

Author SHA1 Message Date
Eduardo Almeida
3d9e2d39b7 doc: Convert tabs to spaces 2022-10-06 19:49:38 +00:00
Peter Barnes
41fed49054 utils: update bench-scheduler to report average and stdev, use 64-bit counters 2022-10-04 23:09:25 +00:00
Gabriel Ferreira
f8846d22ed build: add STANDALONE option to build_exec and fix static builds 2022-09-24 15:04:53 -03:00
Gabriel Ferreira
81155c18c7 build, docs: Add option to limit build and testing to specified modules 2022-09-19 21:55:26 +00:00
Gabriel Ferreira
604302a417 docs: Fix typos in PCH documentation 2022-09-19 21:55:26 +00:00
Gabriel Ferreira
3e43ef1742 build, docs: Replace python-based with cmake-based .ns3rc files 2022-09-19 21:55:26 +00:00
Gabriel Ferreira
24ee65fb23 docs: Add documentation on how to define executable targets in CMake
Includes the new `build_exec` macro.
2022-09-17 11:13:38 +00:00
Stefano Avallone
7193a5f96d network: Add a function to test header (de)serialization 2022-08-31 07:16:10 +00:00
Gabriel Ferreira
6ac76bd9a2 doc: update python bindings docs to use cppyy 2022-08-01 21:24:02 +00:00
Peter D. Barnes, Jr
1bf56b7697 utils: (merges !1000) Rename and refactor bench-simulator -> bench-scheduler
Add --all option to benchmark all schedulers.
2022-07-13 17:32:56 -07:00
Gabriel Ferreira
cc9928f8a1 doc: document CCache and PCH settings 2022-07-01 22:07:40 -03:00
Gabriel Ferreira
60e1e4032c fixing dead links 2022-06-18 17:57:05 -03:00
Tom Henderson
b6a5ee8151 Run utils/trim-trailing-whitespace.py on codebase 2022-06-05 21:01:11 -07:00
Gabriel Ferreira
6a9a3b1f51 doc: add short version on how to find and use third-party libraries 2022-05-29 15:34:53 +00:00
Gabriel Ferreira
df884c1f2e doc: fix gitlab-ci-local link and compiler flags table 2022-05-29 15:34:53 +00:00
Eduardo Almeida
6f9622ccc0 doc: Fix indentation on gnuplot.rst 2022-05-26 17:14:03 -07:00
Eduardo Almeida
201676fca7 Remove "using namespace std;" from codebase 2022-05-26 17:14:03 -07:00
Tommaso Pecorella
64a51b15ac doc: fix apiscan-all example 2022-05-26 17:07:11 +00:00
Tom Henderson
29d201eef8 doc: Fix copy-paste error in Docker section of Python API scanning 2022-04-25 18:23:51 -07:00
Tom Henderson
ccf26928d5 doc: Update manual for Python API scanning (gitlab-ci-local) 2022-04-18 14:04:33 -07:00
Tom Henderson
72c64cd500 doc: Update manual for Python API scanning 2022-04-17 15:46:35 -07:00
Tom Henderson
d511fdce79 doc: Update Python API scanning commands 2022-04-02 13:32:30 -07:00
Gabriel Ferreira
d3f9e0742f build, doc: add "--trace-performance" argument to ns3 configure 2022-04-01 14:50:21 -03:00
Gabriel Ferreira
cbb7628473 build, docs: fixes find_external_library header search paths and docs
Includes:
- search for headers in the library directory when using find_external_library
- prevent module processing (brite, click and openflow) from continuing if ${dependency_name}_FOUND is not set
2022-03-25 23:30:04 -03:00
Gabriel Ferreira
3ee4eb41cb build: fix remaining "lib" prefix removal steps in CMake 2022-03-17 21:48:01 -03:00
Gabriel Ferreira
2298d97452 doc: update build profile docs and add CMake profiling subsection 2022-03-13 21:23:47 +00:00
Gabriel Ferreira
fbebb61a6f build: refactoring CMake and ns3
Includes:
- summarize ns3 commands on top-level --help
- add --quiet as a post-positional argument
- refactor verbose variable names
- aggregate ./ns3 --check-config|profile|version into ./ns3 show config|profile|version
- remove ns3 --check deprecated option
- set VERBOSE environment variable when building/running with -v/--verbose
  https://gitlab.com/nsnam/ns-3-dev/-/issues/590#note_870520212
- enable verbose Makefiles when NS3_VERBOSE is enabled
  https://gitlab.com/nsnam/ns-3-dev/-/issues/590
- introduce default build profile and refactor others
  https://gitlab.com/nsnam/ns-3-dev/-/issues/591
- use "-Og" in "CMAKE_BUILD_TYPE=Debug"/"ns3 -d debug"
- add back FindPython3 and fallback to FindPythonInterp if needed
- redirect pybindgen apiscan output to apiscan.log
- enable CMAKE_FIND_DEBUG_MODE with NS3_VERBOSE and CMake >= 3.17
- add search path logging to find_external_library
  Requires NS3_VERBOSE=ON. This is an anternative to CMAKE_FIND_DEBUG_MODE=true available in CMake >= 3.17
- remove C support
- reduce Int128 checks
- fuse Boost Units Quantity and SI header checks
- replace not found messages with skipping
2022-03-13 21:23:47 +00:00
Gabriel Ferreira
f728b1f8d0 doc: complement how CMake searches for external libraries 2022-03-13 21:23:47 +00:00
Tommaso Pecorella
1ada1e8db1 doc: add section on GitLab CI skip option 2022-03-05 03:24:03 +01:00
Gabriel Ferreira
4aedba2f00 build: CMake refactoring and fixes
Includes:
- fix int64x64 parsing order, remove cached entries in macros-and-definitions and in the docs
- update launch.json scratch names
- add a ctest entry per executable
- forward POSIX signal in ns3 (to get segmentation fault)
- prioritize Ninja generator instead of Makefiles
- add tests for unused utils source files
- remove dummy file and add tests to check for unused source files
- add missing examples and clean up unnecessary definitions
- missing feature entry for LTE used by pybindgen
- refactor CMake related filenames
- fix python libraries and include directories bindings
- fix brite example name
- Keep C++ compiler and flags when refreshing
- Disable precompiled headers when Ccache is found
- Mark find_external_library headers as advanced
- consolidate auxiliary files: build-status.py, _cache.py and .lock-waf_sys.platform_build files are merged into .lock-ns3_sys.platform_build
- scan .cc sources used in bindings and update docs
2022-02-21 22:18:42 -03:00
Gabriel Ferreira
e3575d031d doc: add profiling and gitlab-ci-local sections to the manual
Includes:
- Profilers
 - Memory profilers:
   - Heaptrack
   - Sanitizers
   - Valgrind
 - Performance profilers:
   - AMD uProf
   - Intel VTune
   - Linux's Perf with Hotspot
 - Syscall profilers:
   - Strace
 - Compilation profilers:
   - GCC -ftime-report
   - Clang -ftime-trace and ClangBuildAnalyzer
- Gitlab-CI-Local
  - GitLab CI introduction
  - Rootless docker
  - Using gitlab-ci-local
2022-02-18 17:06:26 +00:00
Gabriel Ferreira
42e320d676 doc: CMake docs 2022-02-08 18:40:09 -03:00
Gabriel Ferreira
33f2ee841b doc: update ns3 API 2022-01-19 16:25:03 -03:00
Tom Henderson
447bf043d1 stats: Simplify dia figures 2021-12-28 08:29:37 -08:00
Peter D. Barnes, Jr
d689d74798 doc: refactor Manual, add Simulator, Time and Scheduler sections 2021-12-28 06:53:15 -08:00
Tom Henderson
38ec28bf50 documentation: Update obsolete links in manual 2021-12-20 21:42:33 -08:00
Tommaso Pecorella
2d3389005b internet: further NSC cleanup 2021-12-17 13:59:48 -08:00
Tom Henderson
2c19b5b453 internet: Remove Network Simulation Cradle (NSC) 2021-12-10 09:07:03 -08:00
Stefano Avallone
6ec6fc2eb6 core: Add an attribute value storing a std::tuple 2021-12-06 10:49:40 +01:00
Gabriel Ferreira
3c604d5b2e Update docs with CMake and ns3 wrapper 2021-12-01 12:29:56 -08:00
chendaojin
e888cb168a doc: fix some typos 2021-11-25 22:53:03 +00:00
Tom Henderson
162b924130 doc: Remove sudo from command (reported by Gabriel Arrobo) 2021-08-20 14:42:44 -07:00
Tom Henderson
e780523fa6 doc: Update documentation about making releases 2021-07-14 12:14:27 -07:00
Tom Henderson
38bf93a8b5 documentation: Update Python API scanning section 2021-04-30 22:08:23 -07:00
Tom Henderson
5155713aac documentation: Update Python chapter of manual 2021-03-19 07:42:45 -07:00
Tommaso Pecorella
fda2c4f87d config-store: GtkConfig bug fixes 2020-12-25 00:19:20 +00:00
Steven Smith
dded72e02e build: (fixes #217) Guard compilation of example used as a test
* Added documentation to ExampleAsTestSuite on the need for this guarding
* Updated with Peter's patch for examples-as-test placeholders in wscripts
2020-06-08 09:35:50 -07:00
Alexander Krotov
d7a144bcf8 troubleshoot.rst: replace --command-template with --gdb and --valgrind 2020-06-01 07:18:03 +03:00
Steven Smith
3a15ad78b8 core: Add test suite support for running examples as tests with comparison of output for regression testing 2020-05-26 21:42:16 +00:00
Peter D. Barnes, Jr
9ddd31c6f9 More flexible create-module.py script
Changed the default creation directory from src/ to contrib/
  Moved create-modules.py from src/ to utils/

Added two new optional command line arguments: --project and --use-src-dir
--project specifies a directory name or path under which the new modules
will be created.
--use-src-dir directs the script to create new modules in the src
directory instead of contrib.  This argument cannot be combined
with --project.

Updated contrib/wscript to search for modules at
arbitrary depths instead of just the child directories under
contrib.

Assume the following directory structure:
contrib/
  project1/
    module1/
      wscript
    module2/
      wscript
  project2/
    sub_project1/
      	module3/
        	wscript
      	module4/
        	wscript
    sub_project2/
      	module5/
        	wscript
      	module6/
        	wscript
    data/
  module7/
    wscript

waf configure will discover the following modules under contrib:
project1/module1
project1/module2
project2/sub_project1/module3
project2/sub_project1/module4
project2/sub_project2/module5
project2/sub_project2/module6
module7
2020-05-20 13:55:28 -07:00