mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
aa084dd5d5
OpenWSN requires a compatible network interface (feature `netif_openwsn`) and UART (at least `UART_NUMOF` needs to be provided).
123 lines
3.0 KiB
Makefile
123 lines
3.0 KiB
Makefile
FEATURES_REQUIRED += netif_openwsn
|
|
FEATURES_REQUIRED += periph_uart
|
|
|
|
ifneq (,$(filter openwsn_openstack,$(USEMODULE)))
|
|
USEMODULE += openwsn_iphc
|
|
USEMODULE += openwsn_ipv6
|
|
USEMODULE += openwsn_mac_low
|
|
USEMODULE += openwsn_mac_high
|
|
USEMODULE += openwsn_crosslayers
|
|
USEMODULE += openwsn_drivers
|
|
USEMODULE += openwsn_sctimer
|
|
USEMODULE += openwsn_radio
|
|
|
|
USEMODULE += openwsn_openweb
|
|
USEMODULE += openwsn_openapps
|
|
USEMODULE += openwsn_scheduler
|
|
|
|
DEFAULT_MODULE += auto_init_openwsn
|
|
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_scheduler,$(USEMODULE)))
|
|
# allow to mock the scheduler as needed
|
|
ifeq (,$(filter openwsn_scheduler_mock,$(USEMODULE)))
|
|
USEMODULE += openwsn_riotos
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_riotos,$(USEMODULE)))
|
|
USEMODULE += event
|
|
USEMODULE += event_callback
|
|
USEMODULE += memarray
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_ipv6,$(USEMODULE)))
|
|
USEMODULE += ipv6
|
|
DEFAULT_MODULE += openwsn_icmpv6_echo
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_cjoin,$(USEMODULE)))
|
|
USEMODULE += openwsn_coap
|
|
USEMODULE += openwsn_crypto
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_coap,$(USEMODULE)))
|
|
# The implementation of sock_udp used by openwsn_coap is asynchronous
|
|
USEMODULE += openwsn_sock_async
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_crypto,$(USEMODULE)))
|
|
USEMODULE += cipher_modes
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_radio,$(USEMODULE)))
|
|
# enable default network devices on the platform
|
|
USEMODULE += netdev_default
|
|
USEMODULE += netdev
|
|
USEMODULE += luid
|
|
ifneq (,$(filter cc2538_rf nrf802154,$(USEMODULE)))
|
|
USEMODULE += openwsn_radio_hal
|
|
endif
|
|
ifneq (,$(filter at86rf2xx,$(USEMODULE)))
|
|
USEMODULE += openwsn_radio_netdev
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_radio_hal,$(USEMODULE)))
|
|
# Used here only for dependency resolution
|
|
DISABLE_MODULE += auto_init_gnrc_netif
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_sctimer,$(USEMODULE)))
|
|
ifeq (,$(filter openwsn_sctimer_ztimer,$(USEMODULE)))
|
|
USEMODULE += openwsn_sctimer_rtt
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_sctimer_ztimer,$(USEMODULE)))
|
|
USEMODULE += ztimer_usec
|
|
USEMODULE += ztimer_msec
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_sctimer_rtt,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_rtt
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_serial,$(USEMODULE)))
|
|
USEMODULE += openwsn_drivers
|
|
USEMODULE += ztimer_usec
|
|
FEATURES_REQUIRED += periph_uart
|
|
FEATURES_OPTIONAL += periph_uart_nonblocking
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_leds openwsn_debugpins,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_gpio
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_debugpins,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_gpio_irq
|
|
endif
|
|
|
|
ifneq (,$(filter sock_udp,$(USEMODULE)))
|
|
USEMODULE += ipv6_addr
|
|
USEMODULE += openwsn_udp
|
|
USEMODULE += openwsn_sock_udp
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_sock%,$(USEMODULE)))
|
|
USEMODULE += openwsn_sock
|
|
USEMODULE += core_mbox
|
|
USEMODULE += ztimer_usec
|
|
endif
|
|
|
|
ifneq (,$(filter openwsn_sock_async,$(USEMODULE)))
|
|
USEMODULE += sock_async
|
|
endif
|
|
|
|
ifneq (,$(filter shell_cmds_default,$(USEMODULE)))
|
|
USEMODULE += l2util
|
|
endif
|
|
# This port currently requires setting ISR_STACKSIZE
|
|
FEATURES_BLACKLIST += arch_esp32 arch_esp8266 arch_riscv arch_avr8
|