```
connectivity
├── netsocket
├── lwipstack
├── nanostack
│ ├── mbed_lib.json // nanostack-interface's mbed_lib.json
│ ├── include
│ │ └── nanostack // headers from features/netsocket/nanostack-interface
│ ├── source // sources from features/netsocket/nanostack-interface
│ ├── coap-service // used by Thread only - deprecate?
│ ├── mbed-mesh-api
│ ├── nanostack-hal-mbed-cmsis-rtos // HAL porting layer for Nanostack on mbed with CMSIS-RTOS
│ ├── sal-stack-nanostack
│ └── sal-stack-nanostack-eventloop
├── cellular // previously in features/cellular/framework/
├── ...
```
This PR is a part of a wider \connectivity refactoring and implements the above new directory structure for \nanostack.
As part of freezing the current tools, reject any changes to tools that
would require a re-release of the tools for the online compiler. This is
to free up our effort on existing tool releases which are very error
prone, time consuming, and labor intensive, so we can focus on
developing a far more maintainable set of tools.
As the online compiler contains a copy of the whole mbed-os folder, it
is not clear which parts of mbed-os are actually used. This change
estimates the dependency between the online compiler, online IDE, and
Mbed OS by searching for "from tools" in Python code in the os.mbed.com
repo
(https://github.com/ARMmbed/os.mbed.com/search?q=%22from+tools%22&unscoped_q=%22from+tools%22)
For further context and explanation on why we've frozen the legacy
tools, please see the blog post at
https://os.mbed.com/blog/entry/Introducing-the-new-Mbed-Tools/
- Public headers moved into mbed-os/connectivity/lwipstack/include/lwipstack folder
- Source moved into mbed-os/connectivity/lwipstack/source folder
- Internal lwip and lwip-sys libraries moved to source folder
Fixes two errors produced on except.S by the IAR assembler (as seen in
issue #13200).
The first: "'ALIGN' is illegal. Use directive ALIGNROM or ALIGNRAM (the
first parameter is raised to the power of 2, the second is a 32-bit fill
value)."
Fixed by changing ALIGN to ALIGNROM 2 to align to a 4-byte boundary
(mirroring what ALIGN does in the ARM except.S).
The second (on THUMB): "Must be placed inside a section"
Fixed by moving THUMB after the SECTION directive so that it affects
that section.