asio: updated ASIO port to use latest asio and esp-idf features

closes https://github.com/espressif/esp-idf/issues/4296


* Original commit: espressif/esp-idf@13d603e486
This commit is contained in:
David Cermak
2019-11-07 12:07:44 +01:00
committed by gabsuren
parent 4e4ab0908d
commit 919091766d
3 changed files with 16 additions and 19 deletions

Submodule components/asio/asio updated: 55efc179b7...3b66e5b051

View File

@ -22,8 +22,12 @@
# define ASIO_NO_EXCEPTIONS
# endif // CONFIG_COMPILER_CXX_EXCEPTIONS
# ifndef CONFIG_COMPILER_RTTI
# define ASIO_NO_TYPEID
# endif // CONFIG_COMPILER_RTTI
//
// LWIP compatifility inet and address macros/functions
// LWIP compatibility inet and address macros/functions
//
# define LWIP_COMPAT_SOCKET_INET 1
# define LWIP_COMPAT_SOCKET_ADDR 1
@ -34,12 +38,6 @@
# define ASIO_DISABLE_SERIAL_PORT
# define ASIO_SEPARATE_COMPILATION
# define ASIO_STANDALONE
# define ASIO_NO_TYPEID
# define ASIO_DISABLE_SIGNAL
# define ASIO_HAS_PTHREADS
# define ASIO_DISABLE_EPOLL
# define ASIO_DISABLE_EVENTFD
# define ASIO_DISABLE_SIGNAL
# define ASIO_DISABLE_SIGACTION
#endif // _ESP_ASIO_CONFIG_H_

View File

@ -15,18 +15,17 @@ Supported features
^^^^^^^^^^^^^^^^^^
ESP platform port currently supports only network asynchronous socket operations; does not support serial port and ssl.
Internal asio settings for ESP include
- EXCEPTIONS: Supported, choice in menuconfig
- SIGNAL, SIGACTION: Not supported
- EPOLL, EVENTFD: Not supported
- TYPEID: Disabled by default, but supported in toolchain and asio (provided stdlib recompiled with -frtti)
- EXCEPTIONS are enabled in ASIO if enabled in menuconfig
- TYPEID is enabled in ASIO if enabled in menuconfig
Application Example
-------------------
ESP examples are based on standard asio examples `examples/protocols/asio`:
- udp_echo_server
- tcp_echo_server
- chat_client
- chat_server
ESP examples are based on standard asio :example:`examples/protocols/asio`:
- :example:`examples/protocols/asio/udp_echo_server`
- :example:`examples/protocols/asio/tcp_echo_server`
- :example:`examples/protocols/asio/chat_client`
- :example:`examples/protocols/asio/chat_server`
Please refer to the specific example README.md for details