openthread-windows-config.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. /*
  2. * Copyright (c) 2016, The OpenThread Authors.
  3. * All rights reserved.
  4. *
  5. * Redistribution and use in source and binary forms, with or without
  6. * modification, are permitted provided that the following conditions are met:
  7. * 1. Redistributions of source code must retain the above copyright
  8. * notice, this list of conditions and the following disclaimer.
  9. * 2. Redistributions in binary form must reproduce the above copyright
  10. * notice, this list of conditions and the following disclaimer in the
  11. * documentation and/or other materials provided with the distribution.
  12. * 3. Neither the name of the copyright holder nor the
  13. * names of its contributors may be used to endorse or promote products
  14. * derived from this software without specific prior written permission.
  15. *
  16. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  17. * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  18. * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  19. * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
  20. * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  21. * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  22. * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  23. * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  24. * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  25. * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  26. * POSSIBILITY OF SUCH DAMAGE.
  27. */
  28. /* Define to 1 to enable the NCP UART interface. */
  29. // On the command line: #define OPENTHREAD_ENABLE_NCP_UART 0
  30. /* Define to 1 to enable the NCP SPI interface. */
  31. // On the command line: #define OPENTHREAD_ENABLE_NCP_SPI 1
  32. /* Define to 1 if you want to enable support for multiple OpenThread
  33. instances. */
  34. #define OPENTHREAD_ENABLE_MULTIPLE_INSTANCES 1
  35. /* Define to 1 if you want to enable default log output. */
  36. #define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED
  37. /* Define to 1 to enable the commissioner role. */
  38. #define OPENTHREAD_ENABLE_COMMISSIONER 1
  39. /* Define to 1 if you want to use diagnostics module */
  40. #define OPENTHREAD_ENABLE_DIAG 0
  41. /* Define to 1 if you want to enable legacy network. */
  42. #define OPENTHREAD_ENABLE_LEGACY 0
  43. /* Define to 1 to enable dtls support. */
  44. #define OPENTHREAD_ENABLE_DTLS 1
  45. /* Define to 1 to enable the joiner role. */
  46. #define OPENTHREAD_ENABLE_JOINER 1
  47. /* Define to 1 to enable the jam detection. */
  48. #define OPENTHREAD_ENABLE_JAM_DETECTION 0
  49. /* Define to 1 to enable DHCPv6 Client. */
  50. #define OPENTHREAD_ENABLE_DHCP6_CLIENT 1
  51. /* Define to 1 to enable DHCPv6 SERVER. */
  52. #define OPENTHREAD_ENABLE_DHCP6_SERVER 1
  53. /* Define to 1 to enable MAC whitelist/blacklist feature. */
  54. #define OPENTHREAD_ENABLE_MAC_FILTER 1
  55. /* Define to 1 to enable TMF proxy feature. */
  56. #define OPENTHREAD_ENABLE_TMF_PROXY 0
  57. /* Define to 1 to enable raw link-layer API. */
  58. #ifdef _KERNEL_MODE
  59. #define OPENTHREAD_ENABLE_RAW_LINK_API 0
  60. #else
  61. #define OPENTHREAD_ENABLE_RAW_LINK_API 1
  62. #endif
  63. /* Define to the platform name. */
  64. #define OPENTHREAD_CONFIG_PLATFORM_INFO "Windows"
  65. /* Define to 1 to enable Border Router feature. */
  66. #define OPENTHREAD_ENABLE_BORDER_ROUTER 1
  67. /* Define to 1 to enable Service feature. */
  68. #define OPENTHREAD_ENABLE_SERVICE 0
  69. /* Name of package */
  70. #define PACKAGE "openthread"
  71. /* Define to the address where bug reports for this package should be sent. */
  72. #define PACKAGE_BUGREPORT "openthread-devel@googlegroups.com"
  73. /* Define to the full name of this package. */
  74. #define PACKAGE_NAME "OPENTHREAD"
  75. /* Define to the full name and version of this package. */
  76. #define PACKAGE_STRING "OPENTHREAD 0.01.00"
  77. /* Define to the one symbol short name of this package. */
  78. #define PACKAGE_TARNAME "openthread"
  79. /* Define to the home page for this package. */
  80. #define PACKAGE_URL "http://github.com/openthread/openthread"
  81. /* Define to the version of this package. */
  82. #define PACKAGE_VERSION "0.01.00"
  83. /* Version number of package */
  84. #define VERSION "0.01.00"
  85. // Windows Kernel only has sprintf_s
  86. #ifdef _KERNEL_MODE
  87. #define snprintf sprintf_s
  88. #endif // _KERNEL_MODE
  89. // Redefine rand to random for test code
  90. #define random rand
  91. // Disable a few warnings that we don't care about
  92. #pragma warning(disable:4200) // nonstandard extension used: zero-sized array in struct/union
  93. #pragma warning(disable:4201) // nonstandard extension used : nameless struct/union
  94. #pragma warning(disable:4291) // no matching operator delete found
  95. #pragma warning(disable:4815) // zero-sized array in stack object will have no elements