The mobile_mac_addr field of the struct _owl_result is now a static char
buffer instead of being dynamically-allocated. When reading the MAC
address, it is also more thoroughly verified.
Fix some problems in the Doxygen-generated man pages (C libraries), the
more noticeable being removing the full path of the files from the
header and synopsis.
Doxygen comments are now used in libowlps, libowlps-client and
libowlps-resultreader. doc/Doxyfile was added as well as CMake rules to
generate man pages for the libraries' header files.
- Default compiler and linker flags were added silently. They are now
set in the cache if no previous values are present.
- Debug flags and regular flags have been merged.
- Position-independent code (doesn't appear in the cache because CMake
lacks variables like CMAKE_EXE_COMPILE_FLAGS):
- Shared libraries are compiled with -fPIC.
- Executables and static libraries are compiled with -fPIE.
- Executables are linked with -pie -fPIE.
libowlps-client and libowlps-resultreader were never built as shared
libraries, therefore we set their version number to 1.0.
For stable releases, the rule is to increase the minor version number
when changes are made to the library without changing the API, and to
bump the major version number (soname) in case of API change.
In the development branch and for development point releases, the soname
should not be increased, even in case of API break. The minor version
number should be bumped instead.
Following this rule, libowlps' version number is bumped to 3.1, as some
changes were made since version 3.0.
To be consistent with the other modules, the positioning server must be
called OwlPS Positioner instead of Positioning, and the executable
owlps-positionerd (even if the daemon mode is not implemented yet).
That's a big commit for a tiny change.
Modify the *time*() functions to avoid passing structures in arguments
(using const pointers instead) or returning structures (using result
arguments instead).