Folder structure
The default folder structure, which you will have if you just follow the default instructions, is as follows:
.
├── components
│ ├── common Set of common scripts, documentation, etc
│ ├── component_x A BabbleSim component
│ │ ├── Depends
│ │ ├── docs
│ │ ├── Makefile
│ │ └── src
│ └── ext_component_y An external BabbleSim component (hosted in its own repo)
│ ├── Depends
│ ├── docs
│ ├── Makefile
│ └── src
├── Makefile -> components/common/Makefile
├── bin Where executables are installed ready to use
├── lib Where libraries are stored ready to be loaded/linked to
└── results Where simulations output is stored
By default the intermediate results of compiling a component will be placed inside that same component folder. And the generated binaries and libraries will be stored inside the simulator bin/ and lib/ folders.
But it is possible to place components and/or the output in different folders.
For this, a set of environment variables are defined.
These wil be set automatically assuming the default folder structure when using the provided
Makefiles. But they can be set to something else before calling make.
Variable | Definition |
---|---|
BSIM_COMPONENTS_PATH |
Path to the components folder. By default the top level makefile assumes it is in the same directory as the folder components/ The individual component makefiles, assume they are placed inside components/<component>/ |
BSIM_BASE_PATH |
Path to the folder where the base repo was cloned. By default the same as BSIM_COMPONENTS_PATH |
BSIM_OUT_PATH |
Where the compilation results are installed. That is, where lib/ , bin/ and results/ will be created. |
COMPONENT_OUTPUT_DIR |
Where the intermediate results of compiling a particular component will be placed By default the folder of the component being compiled |
For the 2G4 external components: | |
2G4_libPhyComv1_COMP_PATH |
Path where ext_2G4_libPhyComv1 was cloned. By default assumed to be ${BSIM_COMPONENTS_PATH}/ext_2G4_libPhyComv1 |
2G4_phy_v1_COMP_PATH |
Path where ext_2G4_phy_v1 was cloned. By default assumed to be ${BSIM_COMPONENTS_PATH}/ext_2G4_phy_v1 |