2019-11-18 15:51:44 +01:00
|
|
|
# include board specific application dependencies
|
|
|
|
-include $(APPDIR)/Makefile.board.dep
|
|
|
|
|
2016-09-29 15:15:21 +02:00
|
|
|
# include board dependencies
|
2020-04-14 15:23:23 +02:00
|
|
|
-include $(BOARDDIR)/Makefile.dep
|
2015-09-10 09:15:27 +02:00
|
|
|
|
2018-09-11 14:13:08 +02:00
|
|
|
# include cpu dependencies
|
|
|
|
-include $(RIOTCPU)/$(CPU)/Makefile.dep
|
2019-06-11 14:16:10 +02:00
|
|
|
|
2018-04-19 16:05:43 +02:00
|
|
|
# include external modules dependencies
|
|
|
|
# processed before RIOT ones to be evaluated before the 'default' rules.
|
|
|
|
-include $(EXTERNAL_MODULE_DIRS:%=%/Makefile.dep)
|
|
|
|
|
2018-03-12 21:48:24 +01:00
|
|
|
# pull dependencies from sys and drivers
|
|
|
|
include $(RIOTBASE)/sys/Makefile.dep
|
2015-10-21 15:11:05 +02:00
|
|
|
include $(RIOTBASE)/drivers/Makefile.dep
|
2016-02-07 19:04:10 +01:00
|
|
|
|
2019-12-07 19:42:48 +01:00
|
|
|
# pull dependencies from packages
|
|
|
|
-include $(USEPKG:%=$(RIOTPKG)/%/Makefile.dep)
|
|
|
|
|
2020-01-22 15:26:19 +01:00
|
|
|
ifneq (,$(filter ssp,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += ssp
|
|
|
|
endif
|
|
|
|
|
2020-02-18 16:41:36 +01:00
|
|
|
ifneq (,$(filter mpu_stack_guard,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += cortexm_mpu
|
|
|
|
endif
|
|
|
|
|
2020-02-16 18:13:00 +01:00
|
|
|
ifneq (,$(filter mpu_noexec_ram,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += cortexm_mpu
|
2020-02-18 16:41:36 +01:00
|
|
|
endif
|
|
|
|
|
2020-03-04 15:50:25 +01:00
|
|
|
ifneq (,$(filter auto_init_gnrc_netif,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_init_devs
|
|
|
|
endif
|
|
|
|
|
2020-03-04 15:50:52 +01:00
|
|
|
ifneq (,$(filter auto_init_saul,$(USEMODULE)))
|
|
|
|
USEMODULE += saul_init_devs
|
|
|
|
endif
|
|
|
|
|
2020-03-30 15:09:02 +02:00
|
|
|
ifneq (,$(filter base64url,$(USEMODULE)))
|
|
|
|
USEMODULE += base64
|
|
|
|
endif
|
|
|
|
|
2016-06-05 13:14:29 +02:00
|
|
|
ifneq (,$(filter csma_sender,$(USEMODULE)))
|
2016-06-05 13:11:32 +02:00
|
|
|
USEMODULE += random
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
2017-06-08 11:49:40 +02:00
|
|
|
|
2018-03-17 14:43:08 +01:00
|
|
|
ifneq (,$(filter dhcpv6_%,$(USEMODULE)))
|
|
|
|
USEMODULE += dhcpv6
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter dhcpv6_client,$(USEMODULE)))
|
|
|
|
USEMODULE += event
|
|
|
|
USEMODULE += random
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2017-06-08 11:49:40 +02:00
|
|
|
ifneq (,$(filter gnrc_mac,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_priority_pktqueue
|
|
|
|
USEMODULE += csma_sender
|
2016-10-13 18:44:28 +02:00
|
|
|
USEMODULE += evtimer
|
2020-05-05 19:04:44 +02:00
|
|
|
ifneq (,$(filter gnrc_netif,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_mac
|
|
|
|
endif
|
2017-06-08 11:49:40 +02:00
|
|
|
endif
|
2016-06-05 13:11:32 +02:00
|
|
|
|
2016-04-10 20:17:45 +02:00
|
|
|
ifneq (,$(filter gnrc_gomach,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_gomach
|
2016-04-10 20:17:45 +02:00
|
|
|
USEMODULE += random
|
|
|
|
USEMODULE += xtimer
|
|
|
|
USEMODULE += gnrc_mac
|
|
|
|
FEATURES_REQUIRED += periph_rtt
|
|
|
|
endif
|
|
|
|
|
2019-03-07 17:12:24 +01:00
|
|
|
ifneq (,$(filter gnrc_lorawan,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
|
|
|
USEMODULE += random
|
|
|
|
USEMODULE += hashes
|
2020-03-05 12:34:49 +01:00
|
|
|
USEMODULE += crypto_aes
|
2019-03-07 17:12:24 +01:00
|
|
|
USEMODULE += netdev_layer
|
|
|
|
USEMODULE += gnrc_neterr
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_lorawan
|
2019-03-07 17:12:24 +01:00
|
|
|
endif
|
|
|
|
|
2016-10-29 16:59:00 +02:00
|
|
|
ifneq (,$(filter sntp,$(USEMODULE)))
|
2019-12-12 10:12:02 +01:00
|
|
|
USEMODULE += sock_udp
|
2016-10-29 16:59:00 +02:00
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2016-03-22 16:41:51 +01:00
|
|
|
ifneq (,$(filter gnrc_netdev_default,$(USEMODULE)))
|
|
|
|
USEMODULE += netdev_default
|
2017-11-16 18:06:46 +01:00
|
|
|
USEMODULE += gnrc_netif
|
2016-03-22 16:41:51 +01:00
|
|
|
endif
|
|
|
|
|
2017-02-15 13:07:34 +01:00
|
|
|
ifneq (,$(filter netdev_ieee802154,$(USEMODULE)))
|
2016-01-16 19:42:10 +01:00
|
|
|
USEMODULE += ieee802154
|
2018-07-10 18:31:09 +02:00
|
|
|
USEMODULE += random
|
2016-01-16 19:42:10 +01:00
|
|
|
endif
|
|
|
|
|
2018-03-21 12:49:40 +01:00
|
|
|
ifneq (,$(filter gnrc_dhcpv6_%, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_dhcpv6
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter gnrc_dhcpv6_client,$(USEMODULE)))
|
|
|
|
USEMODULE += dhcpv6_client
|
|
|
|
USEMODULE += gnrc_ipv6_nib
|
|
|
|
USEMODULE += gnrc_netif
|
|
|
|
USEMODULE += gnrc_sock_udp
|
|
|
|
endif
|
|
|
|
|
2020-02-06 15:09:58 +01:00
|
|
|
ifneq (,$(filter gnrc_dhcpv6_client_6lbr,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_dhcpv6_client
|
|
|
|
endif
|
|
|
|
|
2016-03-30 12:28:39 +02:00
|
|
|
ifneq (,$(filter gnrc_uhcpc,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_uhcpc
|
2017-05-16 10:39:41 +02:00
|
|
|
USEMODULE += uhcpc
|
|
|
|
USEMODULE += gnrc_sock_udp
|
|
|
|
USEMODULE += fmt
|
2016-03-30 12:28:39 +02:00
|
|
|
endif
|
|
|
|
|
2017-10-12 08:58:16 +02:00
|
|
|
ifneq (,$(filter uhcpc,$(USEMODULE)))
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_inet
|
2017-10-12 08:58:16 +02:00
|
|
|
endif
|
|
|
|
|
2016-11-23 19:02:02 +01:00
|
|
|
ifneq (,$(filter gnrc_%,$(filter-out gnrc_netapi gnrc_netreg gnrc_netif% gnrc_pkt%,$(USEMODULE))))
|
2015-08-10 02:41:08 +02:00
|
|
|
USEMODULE += gnrc
|
|
|
|
endif
|
|
|
|
|
2016-06-09 11:08:53 +02:00
|
|
|
ifneq (,$(filter gnrc_sock_%,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_sock
|
|
|
|
endif
|
|
|
|
|
2019-10-31 15:33:28 +01:00
|
|
|
ifneq (,$(filter gnrc_sock_async,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_async
|
|
|
|
USEMODULE += gnrc_netapi_callbacks
|
|
|
|
endif
|
|
|
|
|
2016-10-27 12:04:35 +02:00
|
|
|
ifneq (,$(filter gnrc_sock_ip,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_ip
|
|
|
|
endif
|
|
|
|
|
2016-06-09 11:08:53 +02:00
|
|
|
ifneq (,$(filter gnrc_sock_udp,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_udp
|
|
|
|
USEMODULE += random # to generate random ports
|
2016-10-27 12:04:35 +02:00
|
|
|
USEMODULE += sock_udp
|
2016-06-09 11:08:53 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter gnrc_sock,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netapi_mbox
|
2016-10-27 12:04:35 +02:00
|
|
|
USEMODULE += sock
|
2016-06-09 11:08:53 +02:00
|
|
|
endif
|
|
|
|
|
2016-06-07 13:31:32 +02:00
|
|
|
ifneq (,$(filter gnrc_netapi_mbox,$(USEMODULE)))
|
|
|
|
USEMODULE += core_mbox
|
|
|
|
endif
|
|
|
|
|
2017-02-15 13:07:34 +01:00
|
|
|
ifneq (,$(filter netdev_tap,$(USEMODULE)))
|
2015-09-11 16:28:31 +02:00
|
|
|
USEMODULE += netif
|
2017-02-15 13:07:34 +01:00
|
|
|
USEMODULE += netdev_eth
|
2018-01-11 23:48:57 +01:00
|
|
|
USEMODULE += iolist
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-23 14:25:39 +02:00
|
|
|
ifneq (,$(filter gnrc_rpl_p2p,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_rpl
|
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_rpl,$(USEMODULE)))
|
2018-02-21 20:23:36 +01:00
|
|
|
USEMODULE += gnrc_icmpv6
|
2018-03-01 10:06:53 +01:00
|
|
|
USEMODULE += gnrc_ipv6_nib
|
2015-08-18 17:23:40 +02:00
|
|
|
USEMODULE += trickle
|
2015-09-04 13:16:36 +02:00
|
|
|
USEMODULE += xtimer
|
2017-11-30 21:23:26 +01:00
|
|
|
USEMODULE += evtimer
|
2015-08-18 17:23:40 +02:00
|
|
|
endif
|
|
|
|
|
2015-09-04 10:47:40 +02:00
|
|
|
ifneq (,$(filter trickle,$(USEMODULE)))
|
2016-04-15 15:12:33 +02:00
|
|
|
USEMODULE += random
|
2015-09-04 10:47:40 +02:00
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2018-03-27 21:51:58 +02:00
|
|
|
ifneq (,$(filter gnrc_netif,$(USEMODULE)))
|
|
|
|
USEMODULE += netif
|
2018-12-10 17:22:00 +01:00
|
|
|
USEMODULE += l2util
|
2018-07-21 12:13:41 +02:00
|
|
|
USEMODULE += fmt
|
2018-12-05 14:22:14 +01:00
|
|
|
ifneq (,$(filter netdev_ieee802154,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_ieee802154
|
|
|
|
endif
|
|
|
|
ifneq (,$(filter netdev_eth,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_ethernet
|
|
|
|
endif
|
2019-03-07 17:12:59 +01:00
|
|
|
ifneq (,$(filter gnrc_lorawan,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_lorawan
|
|
|
|
endif
|
2018-03-27 21:51:58 +02:00
|
|
|
endif
|
|
|
|
|
2020-05-05 00:36:01 +02:00
|
|
|
ifneq (,$(filter gnrc_netif_bus,$(USEMODULE)))
|
|
|
|
USEMODULE += core_msg_bus
|
|
|
|
endif
|
|
|
|
|
2018-06-11 16:07:11 +02:00
|
|
|
ifneq (,$(filter gnrc_netif_events,$(USEMODULE)))
|
|
|
|
USEMODULE += core_thread_flags
|
|
|
|
USEMODULE += event
|
|
|
|
endif
|
|
|
|
|
drivers/cc110x: Rewrite of the cc110x driver
The cc110x driver has been re-written from scratch to overcome the limitations
of the old driver. The main motivation of the rewrite was to achieve better
maintainability by a detailed documentation, reduce the complexity and the
overhead of the SPI communication with the device, and to allow to
simultaneously use transceivers with different configuration regarding the used
base band, the channel bandwidth, the modulation rate, and the channel map.
Features of this driver include:
- Support for the CC1100, CC1101, and the CC1100e sub-gigahertz transceivers.
- Detailed documentation of every aspect of this driver.
- An easy to use configuration API that allows setting the transceiver
configuration (modulation rate, channel bandwidth, base frequency) and the
channel map.
- Fast channel hopping by pre-calibration of the channels during device
configuration (so that no calibration is needed during hopping).
- Simplified SPI communication: Only during start-up the MCU has to wait
for the transceiver to be ready (for the power regulators and the crystal
to stabilize). The old driver did this for every SPI transfer, which
resulted in complex communication code. This driver will wait on start up
for the transceiver to power up and then use RIOT's SPI API like every other
driver. (Not only the data sheet states that this is fine, it also proved to
be reliable in practise.)
- Greatly reduced latency: The RTT on the old driver (@150 kbps data rate) was
about 16ms, the new driver (@250 kbps data rate) has as RTT of ~3ms
(depending on SPI clock and on CPU performance) (measured with ping6).
- Increased reliability: The preamble size and the sync word size have been
doubled compared to the old driver (preamble: 8 bytes instead of 4,
sync word: 4 byte instead of 2). The new values are the once recommended by
the data sheet for reliable communication.
- Basic diagnostic during driver initialization to detect common issues as
SPI communication issues and GDO pin configuration/wiring issues.
- TX power configuration with netdev_driver_t::set() API-integration
- Calls to netdev_driver_t::send() block until the transmission has completed
to ease the use of the API (implemented without busy waiting, so that the
MCU can enter lower power states or other threads can be executed).
2018-11-08 17:37:07 +01:00
|
|
|
ifneq (,$(filter ieee802154 nrfmin esp_now cc110x gnrc_sixloenc,$(USEMODULE)))
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_sixlowpan
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_router, $(USEMODULE)))
|
2015-08-31 00:23:11 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_router
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_default, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_sixlowpan_default
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_router_default, $(USEMODULE)))
|
2015-08-31 00:23:11 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_router_default
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
2015-11-15 20:59:19 +01:00
|
|
|
ifneq (,$(filter lwip%, $(USEMODULE)))
|
|
|
|
USEMODULE += lwip_sixlowpan
|
|
|
|
endif
|
2015-05-09 16:39:23 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_default,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_default
|
2017-07-31 17:51:20 +02:00
|
|
|
USEMODULE += gnrc_ipv6_nib_6ln
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan
|
|
|
|
USEMODULE += gnrc_sixlowpan_frag
|
|
|
|
USEMODULE += gnrc_sixlowpan_iphc
|
2015-05-16 19:57:56 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-31 00:23:11 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_router_default,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_router_default
|
2017-07-31 17:51:20 +02:00
|
|
|
USEMODULE += gnrc_ipv6_nib_6lr
|
2015-08-31 00:23:11 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_router
|
|
|
|
USEMODULE += gnrc_sixlowpan_frag
|
|
|
|
USEMODULE += gnrc_sixlowpan_iphc
|
|
|
|
endif
|
|
|
|
|
2015-08-31 00:23:27 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_border_router_default,$(USEMODULE)))
|
2017-07-31 17:51:20 +02:00
|
|
|
USEMODULE += gnrc_ipv6_nib_6lbr
|
2015-08-31 00:23:27 +02:00
|
|
|
USEMODULE += gnrc_ipv6_router_default
|
|
|
|
USEMODULE += gnrc_sixlowpan_router
|
|
|
|
USEMODULE += gnrc_sixlowpan_frag
|
|
|
|
USEMODULE += gnrc_sixlowpan_iphc
|
|
|
|
endif
|
|
|
|
|
2015-08-31 00:23:11 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_router,$(USEMODULE)))
|
2017-07-31 17:51:20 +02:00
|
|
|
USEMODULE += gnrc_ipv6_router
|
2015-08-31 00:23:11 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_frag,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_sixlowpan
|
2019-10-17 16:56:38 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_frag_fb
|
2019-09-27 18:17:07 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_frag_rb
|
2019-09-27 18:53:31 +02:00
|
|
|
endif
|
|
|
|
|
2019-10-17 16:56:38 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_frag_fb,$(USEMODULE)))
|
|
|
|
USEMODULE += core_msg
|
|
|
|
endif
|
|
|
|
|
2019-09-27 18:53:31 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_frag_rb,$(USEMODULE)))
|
2015-10-28 21:12:23 +01:00
|
|
|
USEMODULE += xtimer
|
2015-04-08 11:56:10 +02:00
|
|
|
endif
|
|
|
|
|
2019-09-27 19:04:58 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_frag_vrb,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
2019-10-17 16:56:38 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_frag_fb
|
2019-09-27 19:04:58 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_iphc,$(USEMODULE)))
|
2019-02-06 17:49:48 +01:00
|
|
|
USEMODULE += gnrc_ipv6
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan
|
|
|
|
USEMODULE += gnrc_sixlowpan_ctx
|
2016-04-27 08:22:41 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_iphc_nhc
|
2015-04-13 12:48:53 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_sixlowpan
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_sixlowpan
|
2015-08-17 15:06:44 +02:00
|
|
|
USEMODULE += sixlowpan
|
2020-05-05 17:55:11 +02:00
|
|
|
ifneq (,$(filter gnrc_netif,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif_6lo
|
|
|
|
endif
|
2015-03-16 17:52:19 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_sixlowpan_ctx,$(USEMODULE)))
|
2015-08-10 00:26:36 +02:00
|
|
|
USEMODULE += ipv6_addr
|
2015-10-28 21:12:23 +01:00
|
|
|
USEMODULE += xtimer
|
2015-04-10 12:02:55 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_default,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6
|
|
|
|
USEMODULE += gnrc_icmpv6
|
2015-05-16 19:57:56 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_router_default,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_router
|
|
|
|
USEMODULE += gnrc_icmpv6
|
2015-08-31 14:25:17 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ndp,$(USEMODULE)))
|
2017-05-11 16:33:05 +02:00
|
|
|
USEMODULE += gnrc_icmpv6
|
2017-11-16 18:06:46 +01:00
|
|
|
USEMODULE += gnrc_netif
|
2017-05-11 16:33:05 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_icmpv6_echo,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_icmpv6
|
2015-04-01 17:35:23 +02:00
|
|
|
endif
|
|
|
|
|
2015-06-10 04:02:10 +02:00
|
|
|
ifneq (,$(filter gnrc_icmpv6_error,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_icmpv6
|
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_icmpv6,$(USEMODULE)))
|
2015-08-07 14:56:36 +02:00
|
|
|
USEMODULE += inet_csum
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_ipv6
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_icmpv6
|
2017-01-27 16:13:56 +01:00
|
|
|
USEMODULE += icmpv6
|
2015-03-07 20:37:45 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_rpl_srh,$(USEMODULE)))
|
2018-10-23 19:34:46 +02:00
|
|
|
USEMODULE += gnrc_ipv6_ext_rh
|
2015-03-07 21:46:57 +01:00
|
|
|
endif
|
|
|
|
|
2019-05-23 16:29:19 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_ext_frag,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_ext
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2020-02-03 18:09:29 +01:00
|
|
|
ifneq (,$(filter gnrc_ipv6_ext_opt,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_ext
|
|
|
|
endif
|
|
|
|
|
2018-10-23 19:34:46 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_ext_rh,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_ext
|
2015-03-07 21:46:57 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_ext,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_ipv6_ext
|
2015-03-07 21:46:57 +01:00
|
|
|
endif
|
|
|
|
|
2015-09-28 14:40:35 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_whitelist,$(USEMODULE)))
|
|
|
|
USEMODULE += ipv6_addr
|
|
|
|
endif
|
|
|
|
|
2016-01-26 11:28:01 +01:00
|
|
|
ifneq (,$(filter gnrc_ipv6_blacklist,$(USEMODULE)))
|
|
|
|
USEMODULE += ipv6_addr
|
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_router,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6
|
2017-07-27 15:26:49 +02:00
|
|
|
USEMODULE += gnrc_ipv6_nib_router
|
2015-03-03 22:20:21 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_ipv6
|
2015-08-07 14:56:36 +02:00
|
|
|
USEMODULE += inet_csum
|
2015-08-10 00:26:36 +02:00
|
|
|
USEMODULE += ipv6_addr
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_ipv6_hdr
|
2017-07-31 17:51:20 +02:00
|
|
|
USEMODULE += gnrc_ipv6_nib
|
2017-11-16 18:06:46 +01:00
|
|
|
USEMODULE += gnrc_netif
|
2020-05-05 18:56:17 +02:00
|
|
|
USEMODULE += gnrc_netif_ipv6
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_ipv6
|
2015-03-03 22:20:21 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_hdr,$(USEMODULE)))
|
2015-08-10 02:04:35 +02:00
|
|
|
USEMODULE += ipv6_hdr
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_pktbuf
|
2015-08-10 02:04:35 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:06:44 +02:00
|
|
|
ifneq (,$(filter sixlowpan,$(USEMODULE)))
|
|
|
|
USEMODULE += ipv6_hdr
|
|
|
|
endif
|
|
|
|
|
2015-08-10 02:04:35 +02:00
|
|
|
ifneq (,$(filter ipv6_hdr,$(USEMODULE)))
|
|
|
|
USEMODULE += inet_csum
|
2015-12-18 20:59:58 +01:00
|
|
|
USEMODULE += ipv6_addr
|
2015-08-10 02:04:35 +02:00
|
|
|
endif
|
|
|
|
|
2017-06-10 22:48:44 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_nib_6lbr,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib_6lr
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter gnrc_ipv6_nib_6lr,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib_6ln
|
|
|
|
USEMODULE += gnrc_ipv6_nib_router
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter gnrc_ipv6_nib_6ln,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib
|
2017-05-02 17:05:10 +02:00
|
|
|
USEMODULE += gnrc_sixlowpan_nd
|
2017-06-10 22:48:44 +02:00
|
|
|
endif
|
|
|
|
|
2018-02-26 17:34:43 +01:00
|
|
|
ifneq (,$(filter gnrc_ipv6_nib_dns,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib
|
|
|
|
endif
|
|
|
|
|
2017-06-10 22:48:44 +02:00
|
|
|
ifneq (,$(filter gnrc_ipv6_nib_router,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib
|
|
|
|
endif
|
|
|
|
|
2017-01-11 11:54:53 +01:00
|
|
|
ifneq (,$(filter gnrc_ipv6_nib,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_ipv6_nib
|
2017-04-26 15:45:04 +02:00
|
|
|
USEMODULE += evtimer
|
2017-11-17 10:25:17 +01:00
|
|
|
USEMODULE += gnrc_ndp
|
2017-11-19 14:16:42 +01:00
|
|
|
USEMODULE += gnrc_netif
|
2017-01-11 11:54:53 +01:00
|
|
|
USEMODULE += ipv6_addr
|
|
|
|
USEMODULE += random
|
2018-02-26 17:34:43 +01:00
|
|
|
ifneq (,$(filter sock_dns,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_ipv6_nib_dns
|
|
|
|
endif
|
2017-01-11 11:54:53 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_udp,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_udp
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_udp
|
2015-08-07 14:56:36 +02:00
|
|
|
USEMODULE += inet_csum
|
2015-08-10 03:16:53 +02:00
|
|
|
USEMODULE += udp
|
2015-04-24 15:06:14 +02:00
|
|
|
endif
|
|
|
|
|
2016-02-04 14:37:35 +01:00
|
|
|
ifneq (,$(filter gnrc_tcp,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_tcp
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_tcp
|
2016-02-04 14:37:35 +01:00
|
|
|
USEMODULE += inet_csum
|
|
|
|
USEMODULE += random
|
2017-02-07 13:41:32 +01:00
|
|
|
USEMODULE += tcp
|
2016-02-04 14:37:35 +01:00
|
|
|
USEMODULE += xtimer
|
2017-02-25 18:40:37 +01:00
|
|
|
USEMODULE += core_mbox
|
2016-02-04 14:37:35 +01:00
|
|
|
endif
|
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc_pktdump,$(USEMODULE)))
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_pktdump
|
2015-08-17 15:41:29 +02:00
|
|
|
USEMODULE += gnrc_pktbuf
|
2015-03-24 02:53:06 +01:00
|
|
|
USEMODULE += od
|
2015-03-21 11:47:25 +01:00
|
|
|
endif
|
2015-03-22 18:42:34 +01:00
|
|
|
|
2017-01-31 14:53:38 +01:00
|
|
|
ifneq (,$(filter od,$(USEMODULE)))
|
|
|
|
USEMODULE += fmt
|
|
|
|
endif
|
|
|
|
|
2017-08-24 18:25:58 +02:00
|
|
|
ifneq (,$(filter od_string,$(USEMODULE)))
|
|
|
|
USEMODULE += od
|
|
|
|
endif
|
|
|
|
|
2017-10-23 15:49:10 +02:00
|
|
|
ifneq (,$(filter newlib_gnu_source,$(USEMODULE)))
|
|
|
|
USEMODULE += newlib
|
|
|
|
endif
|
|
|
|
|
2016-03-21 07:36:02 +01:00
|
|
|
ifneq (,$(filter newlib_nano,$(USEMODULE)))
|
|
|
|
USEMODULE += newlib
|
|
|
|
endif
|
|
|
|
|
2015-08-04 15:29:06 +02:00
|
|
|
ifneq (,$(filter newlib,$(USEMODULE)))
|
2015-11-23 17:43:42 +01:00
|
|
|
# allow custom newlib syscalls implementations by adding
|
|
|
|
# newlib_syscalls_XXX to USEMODULE
|
|
|
|
ifeq (,$(filter newlib_syscalls_%,$(USEMODULE)))
|
|
|
|
USEMODULE += newlib_syscalls_default
|
|
|
|
endif
|
2015-08-04 15:29:06 +02:00
|
|
|
endif
|
|
|
|
|
2019-12-13 13:01:30 +01:00
|
|
|
ifneq (,$(filter posix_select,$(USEMODULE)))
|
|
|
|
ifneq (,$(filter posix_sockets,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_async
|
|
|
|
endif
|
|
|
|
USEMODULE += core_thread_flags
|
|
|
|
USEMODULE += posix_headers
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2015-08-17 13:48:08 +02:00
|
|
|
ifneq (,$(filter posix_sockets,$(USEMODULE)))
|
2016-10-13 23:19:27 +02:00
|
|
|
USEMODULE += bitfield
|
2015-08-17 13:48:08 +02:00
|
|
|
USEMODULE += random
|
2017-03-22 12:36:03 +01:00
|
|
|
USEMODULE += vfs
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
2017-09-20 22:11:04 +02:00
|
|
|
USEMODULE += xtimer
|
2015-08-17 13:48:08 +02:00
|
|
|
endif
|
|
|
|
|
2017-11-09 10:03:06 +01:00
|
|
|
ifneq (,$(filter shell,$(USEMODULE)))
|
2019-05-28 20:30:30 +02:00
|
|
|
USEMODULE += stdin
|
|
|
|
endif
|
|
|
|
|
2020-03-18 13:31:01 +01:00
|
|
|
# Include all stdio_% dependencies after all USEMODULE += stdio_%
|
|
|
|
include $(RIOTBASE)/makefiles/stdio.inc.mk
|
2019-10-12 23:29:58 +02:00
|
|
|
|
2016-12-07 20:32:00 +01:00
|
|
|
ifneq (,$(filter isrpipe,$(USEMODULE)))
|
|
|
|
USEMODULE += tsrb
|
|
|
|
endif
|
|
|
|
|
2019-03-23 20:43:27 +01:00
|
|
|
ifneq (,$(filter isrpipe_read_timeout,$(USEMODULE)))
|
|
|
|
USEMODULE += isrpipe
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2017-09-20 22:11:04 +02:00
|
|
|
ifneq (,$(filter shell_commands,$(USEMODULE)))
|
|
|
|
ifneq (,$(filter fib,$(USEMODULE)))
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_inet
|
2017-09-20 22:11:04 +02:00
|
|
|
endif
|
2019-07-05 13:49:40 +02:00
|
|
|
ifneq (,$(filter nimble_netif,$(USEMODULE)))
|
|
|
|
USEMODULE += nimble_scanner
|
|
|
|
USEMODULE += nimble_scanlist
|
2019-12-05 14:47:48 +01:00
|
|
|
USEMODULE += fmt
|
2019-07-05 13:49:40 +02:00
|
|
|
endif
|
2013-09-30 15:48:35 +02:00
|
|
|
endif
|
|
|
|
|
2015-08-03 19:21:21 +02:00
|
|
|
ifneq (,$(filter posix_semaphore,$(USEMODULE)))
|
2015-10-19 16:15:37 +02:00
|
|
|
USEMODULE += sema
|
2015-10-25 15:53:26 +01:00
|
|
|
USEMODULE += xtimer
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
2015-08-03 19:21:21 +02:00
|
|
|
endif
|
|
|
|
|
2017-11-06 11:20:43 +01:00
|
|
|
ifneq (,$(filter posix_time,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter posix_inet,$(USEMODULE)))
|
|
|
|
USEMODULE += posix_headers
|
2017-11-06 11:20:43 +01:00
|
|
|
endif
|
|
|
|
|
2015-11-15 20:59:19 +01:00
|
|
|
ifneq (,$(filter lwip_sixlowpan,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_ipv6_autoconfig
|
2018-12-12 10:35:41 +01:00
|
|
|
USEMODULE += l2util
|
2015-11-15 20:59:19 +01:00
|
|
|
endif
|
|
|
|
|
2016-04-28 12:22:42 +02:00
|
|
|
ifneq (,$(filter lwip_ipv6_autoconfig lwip_ipv6_mld,$(USEMODULE)))
|
2015-11-15 20:59:19 +01:00
|
|
|
USEMODULE += lwip_ipv6
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter lwip_ipv6,$(USEMODULE)))
|
|
|
|
USEMODULE += random
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter lwip_udplite,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_udp
|
|
|
|
endif
|
2015-11-27 17:14:25 +01:00
|
|
|
|
2016-09-02 19:03:35 +02:00
|
|
|
ifneq (,$(filter lwip_sock_%,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_sock
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter lwip_sock_ip,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_raw
|
2016-10-27 12:04:35 +02:00
|
|
|
USEMODULE += sock_ip
|
2016-09-02 19:03:35 +02:00
|
|
|
endif
|
|
|
|
|
2016-09-02 19:03:35 +02:00
|
|
|
ifneq (,$(filter lwip_sock_tcp,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_tcp
|
2016-10-27 12:04:35 +02:00
|
|
|
USEMODULE += sock_tcp
|
2016-09-02 19:03:35 +02:00
|
|
|
endif
|
|
|
|
|
2016-09-02 19:03:35 +02:00
|
|
|
ifneq (,$(filter lwip_sock_udp,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_udp
|
2016-10-27 12:04:35 +02:00
|
|
|
USEMODULE += sock_udp
|
2016-09-02 19:03:35 +02:00
|
|
|
endif
|
|
|
|
|
2015-11-15 20:59:19 +01:00
|
|
|
ifneq (,$(filter lwip_%,$(USEMODULE)))
|
2015-08-03 22:30:46 +02:00
|
|
|
USEPKG += lwip
|
2016-09-02 14:56:19 +02:00
|
|
|
USEMODULE += core_mbox
|
2015-11-15 20:59:19 +01:00
|
|
|
USEMODULE += lwip_api
|
2015-11-15 20:58:39 +01:00
|
|
|
USEMODULE += lwip_contrib
|
2015-08-03 22:30:46 +02:00
|
|
|
USEMODULE += lwip_core
|
2015-11-15 20:59:19 +01:00
|
|
|
USEMODULE += lwip_netif
|
|
|
|
ifeq (,$(filter lwip_ipv4 lwip_ipv6,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_ipv4
|
|
|
|
endif
|
|
|
|
ifeq (,$(filter lwip_tcp lwip_udp lwip_udplite,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_raw
|
|
|
|
endif
|
2018-09-04 13:43:09 +02:00
|
|
|
ifneq (,$(filter netdev_eth,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_ethernet
|
|
|
|
endif
|
2015-11-15 20:59:19 +01:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter lwip_ppp,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_polarssl
|
2015-08-03 22:30:46 +02:00
|
|
|
endif
|
|
|
|
|
2015-11-15 20:58:39 +01:00
|
|
|
ifneq (,$(filter lwip_contrib,$(USEMODULE)))
|
|
|
|
USEMODULE += sema
|
2016-09-02 19:03:35 +02:00
|
|
|
USEMODULE += xtimer
|
2015-11-15 20:58:39 +01:00
|
|
|
endif
|
|
|
|
|
2019-12-18 07:16:20 +01:00
|
|
|
ifneq (,$(filter lwip_dhcp_auto,$(USEMODULE)))
|
|
|
|
USEMODULE += lwip_dhcp
|
|
|
|
endif
|
|
|
|
|
2015-10-19 16:15:37 +02:00
|
|
|
ifneq (,$(filter sema,$(USEMODULE)))
|
2015-10-25 15:44:42 +01:00
|
|
|
USEMODULE += xtimer
|
2015-08-03 18:52:32 +02:00
|
|
|
endif
|
|
|
|
|
2013-12-20 15:23:09 +01:00
|
|
|
|
2014-07-22 20:24:45 +02:00
|
|
|
ifneq (,$(filter libfixmath-unittests,$(USEMODULE)))
|
2015-03-17 16:28:01 +01:00
|
|
|
USEPKG += libfixmath
|
2016-05-12 16:39:03 +02:00
|
|
|
USEMODULE += libfixmath
|
2014-07-22 20:24:45 +02:00
|
|
|
endif
|
2014-09-29 18:09:18 +02:00
|
|
|
|
2017-10-28 21:09:36 +02:00
|
|
|
ifneq (,$(filter luid,$(USEMODULE)))
|
|
|
|
FEATURES_OPTIONAL += periph_cpuid
|
|
|
|
endif
|
|
|
|
|
2014-11-04 08:47:57 +01:00
|
|
|
ifneq (,$(filter fib,$(USEMODULE)))
|
2015-05-25 21:01:51 +02:00
|
|
|
USEMODULE += universal_address
|
2015-09-08 13:44:52 +02:00
|
|
|
USEMODULE += xtimer
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
2014-11-04 08:47:57 +01:00
|
|
|
endif
|
2015-04-09 17:36:39 +02:00
|
|
|
|
2015-02-25 16:31:03 +01:00
|
|
|
# if any log_* is used, also use LOG pseudomodule
|
|
|
|
ifneq (,$(filter log_%,$(USEMODULE)))
|
|
|
|
USEMODULE += log
|
|
|
|
endif
|
2015-03-03 19:34:12 +01:00
|
|
|
|
|
|
|
ifneq (,$(filter cpp11-compat,$(USEMODULE)))
|
2015-11-11 18:17:32 +01:00
|
|
|
USEMODULE += xtimer
|
2015-03-03 19:34:12 +01:00
|
|
|
USEMODULE += timex
|
|
|
|
FEATURES_REQUIRED += cpp
|
|
|
|
endif
|
2015-06-04 11:50:03 +02:00
|
|
|
|
2015-08-17 15:41:29 +02:00
|
|
|
ifneq (,$(filter gnrc,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netapi
|
|
|
|
USEMODULE += gnrc_netreg
|
|
|
|
USEMODULE += gnrc_netif
|
|
|
|
USEMODULE += gnrc_netif_hdr
|
|
|
|
USEMODULE += gnrc_pktbuf
|
2019-12-12 10:10:22 +01:00
|
|
|
ifneq (,$(filter sock_udp, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_sock_udp
|
|
|
|
endif
|
2015-08-06 12:12:47 +02:00
|
|
|
endif
|
|
|
|
|
2015-09-09 11:29:00 +02:00
|
|
|
ifneq (,$(filter gnrc_pktbuf, $(USEMODULE)))
|
|
|
|
ifeq (,$(filter gnrc_pktbuf_%, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_pktbuf_static
|
|
|
|
endif
|
2018-06-22 18:47:43 +02:00
|
|
|
ifeq (gnrc_pktbuf_cmd,$(filter gnrc_pktbuf_%, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_pktbuf_static
|
|
|
|
endif
|
2020-01-16 11:01:17 +01:00
|
|
|
DEFAULT_MODULE += auto_init_gnrc_pktbuf
|
2016-02-11 00:45:25 +01:00
|
|
|
USEMODULE += gnrc_pkt
|
2015-09-09 11:29:00 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter gnrc_pktbuf_%, $(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_pktbuf # make MODULE_GNRC_PKTBUF macro available for all implementations
|
|
|
|
endif
|
|
|
|
|
2017-09-06 17:18:22 +02:00
|
|
|
ifneq (,$(filter gnrc_netif_%,$(USEMODULE)))
|
|
|
|
USEMODULE += gnrc_netif
|
|
|
|
endif
|
|
|
|
|
2016-02-14 14:49:03 +01:00
|
|
|
ifneq (,$(filter netstats_%, $(USEMODULE)))
|
|
|
|
USEMODULE += netstats
|
|
|
|
endif
|
|
|
|
|
2017-01-31 17:25:32 +01:00
|
|
|
ifneq (,$(filter gnrc_lwmac,$(USEMODULE)))
|
2017-11-16 18:06:46 +01:00
|
|
|
USEMODULE += gnrc_netif
|
2020-04-30 23:14:22 +02:00
|
|
|
USEMODULE += gnrc_nettype_lwmac
|
2017-01-31 17:25:32 +01:00
|
|
|
USEMODULE += gnrc_mac
|
|
|
|
FEATURES_REQUIRED += periph_rtt
|
|
|
|
endif
|
|
|
|
|
2015-09-09 18:32:54 +02:00
|
|
|
ifneq (,$(filter pthread,$(USEMODULE)))
|
2017-05-16 10:39:41 +02:00
|
|
|
USEMODULE += xtimer
|
|
|
|
USEMODULE += timex
|
2015-09-09 18:32:54 +02:00
|
|
|
endif
|
2015-09-10 08:27:06 +02:00
|
|
|
|
|
|
|
ifneq (,$(filter schedstatistics,$(USEMODULE)))
|
2017-09-06 13:59:07 +02:00
|
|
|
USEMODULE += xtimer
|
2019-09-10 17:04:31 +02:00
|
|
|
USEMODULE += sched_cb
|
2015-09-10 08:27:06 +02:00
|
|
|
endif
|
|
|
|
|
2015-09-18 23:00:31 +02:00
|
|
|
ifneq (,$(filter arduino,$(USEMODULE)))
|
2017-05-16 10:39:41 +02:00
|
|
|
FEATURES_REQUIRED += arduino
|
2019-10-20 17:28:29 +02:00
|
|
|
FEATURES_OPTIONAL += arduino_pwm
|
2019-10-08 10:26:23 +02:00
|
|
|
FEATURES_OPTIONAL += periph_adc
|
2019-05-06 09:20:30 +02:00
|
|
|
FEATURES_REQUIRED += periph_gpio
|
2017-05-16 10:39:41 +02:00
|
|
|
USEMODULE += xtimer
|
2015-09-18 23:00:31 +02:00
|
|
|
endif
|
|
|
|
|
2019-10-20 17:28:29 +02:00
|
|
|
ifneq (,$(filter arduino_pwm,$(FEATURES_USED)))
|
|
|
|
FEATURES_REQUIRED += periph_pwm
|
|
|
|
endif
|
|
|
|
|
2018-02-19 08:43:39 +01:00
|
|
|
ifneq (,$(filter saul,$(USEMODULE)))
|
|
|
|
USEMODULE += phydat
|
|
|
|
endif
|
|
|
|
|
2015-11-18 16:06:16 +01:00
|
|
|
ifneq (,$(filter saul_reg,$(USEMODULE)))
|
|
|
|
USEMODULE += saul
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter saul_default,$(USEMODULE)))
|
2020-01-11 10:02:19 +01:00
|
|
|
DEFAULT_MODULE += auto_init_saul
|
2015-11-18 16:06:16 +01:00
|
|
|
USEMODULE += saul
|
2017-01-17 12:20:50 +01:00
|
|
|
USEMODULE += saul_reg
|
2015-11-18 16:06:16 +01:00
|
|
|
endif
|
|
|
|
|
2017-10-28 19:19:14 +02:00
|
|
|
ifneq (,$(filter saul_adc,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_adc
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter saul_gpio,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_gpio
|
|
|
|
endif
|
|
|
|
|
2015-11-18 16:06:16 +01:00
|
|
|
ifneq (,$(filter saul,$(USEMODULE)))
|
|
|
|
USEMODULE += phydat
|
|
|
|
endif
|
|
|
|
|
2019-01-13 15:04:09 +01:00
|
|
|
ifneq (,$(filter saul_nrf_temperature,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_temperature
|
|
|
|
endif
|
|
|
|
|
2015-11-18 16:06:16 +01:00
|
|
|
ifneq (,$(filter phydat,$(USEMODULE)))
|
|
|
|
USEMODULE += fmt
|
|
|
|
endif
|
2016-02-05 12:52:02 +01:00
|
|
|
|
2016-04-11 21:05:08 +02:00
|
|
|
ifneq (,$(filter evtimer,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2019-08-13 14:53:30 +02:00
|
|
|
ifneq (,$(filter fuzzing,$(USEMODULE)))
|
|
|
|
USEMODULE += netdev_test
|
|
|
|
USEMODULE += gnrc_netif
|
|
|
|
USEMODULE += gnrc_pktbuf_malloc
|
|
|
|
endif
|
|
|
|
|
2016-11-23 19:06:59 +01:00
|
|
|
ifneq (,$(filter can_linux,$(USEMODULE)))
|
2017-10-18 11:29:22 +02:00
|
|
|
LINKFLAGS += -lsocketcan
|
2016-11-23 19:06:59 +01:00
|
|
|
endif
|
|
|
|
|
2016-11-23 19:02:02 +01:00
|
|
|
ifneq (,$(filter can,$(USEMODULE)))
|
|
|
|
USEMODULE += can_raw
|
|
|
|
ifneq (,$(filter can_mbox,$(USEMODULE)))
|
|
|
|
USEMODULE += core_mbox
|
|
|
|
endif
|
2018-06-22 21:19:31 +02:00
|
|
|
USEMODULE += memarray
|
2016-11-23 19:02:02 +01:00
|
|
|
endif
|
|
|
|
|
2016-11-23 19:08:30 +01:00
|
|
|
ifneq (,$(filter can_isotp,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
2018-06-22 21:19:31 +02:00
|
|
|
USEMODULE += gnrc_pktbuf
|
2016-11-23 19:08:30 +01:00
|
|
|
endif
|
|
|
|
|
2016-11-23 19:10:34 +01:00
|
|
|
ifneq (,$(filter conn_can,$(USEMODULE)))
|
|
|
|
USEMODULE += can
|
|
|
|
USEMODULE += can_mbox
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2018-07-03 16:13:15 +02:00
|
|
|
ifneq (,$(filter puf_sram,$(USEMODULE)))
|
|
|
|
USEMODULE += hashes
|
|
|
|
USEMODULE += random
|
|
|
|
FEATURES_REQUIRED += puf_sram
|
|
|
|
endif
|
|
|
|
|
2015-11-27 13:42:40 +01:00
|
|
|
ifneq (,$(filter random,$(USEMODULE)))
|
2020-01-16 08:58:25 +01:00
|
|
|
DEFAULT_MODULE += auto_init_random
|
2017-08-30 23:49:30 +02:00
|
|
|
USEMODULE += prng
|
2017-05-16 10:39:41 +02:00
|
|
|
# select default prng
|
|
|
|
ifeq (,$(filter prng_%,$(USEMODULE)))
|
|
|
|
USEMODULE += prng_tinymt32
|
|
|
|
endif
|
2015-11-27 13:42:40 +01:00
|
|
|
|
2018-03-12 21:48:24 +01:00
|
|
|
ifneq (,$(filter prng_fortuna,$(USEMODULE)))
|
|
|
|
USEMODULE += fortuna
|
|
|
|
USEMODULE += hashes
|
|
|
|
USEMODULE += crypto
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2017-05-16 10:39:41 +02:00
|
|
|
ifneq (,$(filter prng_tinymt32,$(USEMODULE)))
|
|
|
|
USEMODULE += tinymt32
|
|
|
|
endif
|
2017-08-31 00:50:25 +02:00
|
|
|
|
2018-06-19 18:42:25 +02:00
|
|
|
ifneq (,$(filter prng_sha1prng,$(USEMODULE)))
|
|
|
|
USEMODULE += hashes
|
|
|
|
endif
|
|
|
|
|
2020-07-07 15:34:52 +02:00
|
|
|
ifneq (,$(filter prng_hwrng,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_hwrng
|
|
|
|
endif
|
|
|
|
|
2019-02-08 14:41:57 +01:00
|
|
|
ifeq (,$(filter puf_sram,$(USEMODULE)))
|
|
|
|
FEATURES_OPTIONAL += periph_hwrng
|
|
|
|
endif
|
|
|
|
|
2017-08-31 00:50:25 +02:00
|
|
|
USEMODULE += luid
|
2015-11-27 13:42:40 +01:00
|
|
|
endif
|
2016-09-29 15:15:21 +02:00
|
|
|
|
2018-06-29 17:25:55 +02:00
|
|
|
ifneq (,$(filter asymcute,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_udp
|
|
|
|
USEMODULE += sock_util
|
|
|
|
USEMODULE += random
|
|
|
|
USEMODULE += event_timeout
|
|
|
|
USEMODULE += event_callback
|
|
|
|
endif
|
|
|
|
|
2017-02-21 00:01:59 +01:00
|
|
|
ifneq (,$(filter emcute,$(USEMODULE)))
|
|
|
|
USEMODULE += core_thread_flags
|
|
|
|
USEMODULE += sock_udp
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2016-07-08 15:56:09 +02:00
|
|
|
ifneq (,$(filter constfs,$(USEMODULE)))
|
|
|
|
USEMODULE += vfs
|
|
|
|
endif
|
|
|
|
|
2016-07-11 14:51:47 +02:00
|
|
|
ifneq (,$(filter devfs,$(USEMODULE)))
|
|
|
|
USEMODULE += vfs
|
|
|
|
endif
|
|
|
|
|
2016-08-30 10:27:14 +02:00
|
|
|
ifneq (,$(filter vfs,$(USEMODULE)))
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
2017-05-16 10:39:41 +02:00
|
|
|
ifeq (native, $(BOARD))
|
|
|
|
USEMODULE += native_vfs
|
|
|
|
endif
|
2016-08-30 10:27:14 +02:00
|
|
|
endif
|
|
|
|
|
2019-12-06 15:45:35 +01:00
|
|
|
ifneq (,$(filter sock_async_event,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_async
|
|
|
|
USEMODULE += event
|
|
|
|
endif
|
|
|
|
|
2017-03-03 11:14:41 +01:00
|
|
|
ifneq (,$(filter sock_dns,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_util
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_headers
|
2017-03-03 11:14:41 +01:00
|
|
|
endif
|
|
|
|
|
2018-02-26 17:32:31 +01:00
|
|
|
ifneq (,$(filter sock_util,$(USEMODULE)))
|
2018-11-09 15:04:45 +01:00
|
|
|
USEMODULE += posix_inet
|
2018-06-13 16:16:48 +02:00
|
|
|
USEMODULE += fmt
|
|
|
|
USEMODULE += sock_udp
|
2018-02-26 17:32:31 +01:00
|
|
|
endif
|
|
|
|
|
2017-10-22 13:54:43 +02:00
|
|
|
ifneq (,$(filter event_%,$(USEMODULE)))
|
|
|
|
USEMODULE += event
|
|
|
|
endif
|
|
|
|
|
2019-10-16 20:36:42 +02:00
|
|
|
ifneq (,$(filter event_thread_%,$(USEMODULE)))
|
|
|
|
USEMODULE += event_thread
|
|
|
|
endif
|
|
|
|
|
2017-10-22 13:54:43 +02:00
|
|
|
ifneq (,$(filter event_timeout,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter event,$(USEMODULE)))
|
|
|
|
USEMODULE += core_thread_flags
|
|
|
|
endif
|
|
|
|
|
2016-07-11 09:54:03 +02:00
|
|
|
ifneq (,$(filter spiffs,$(USEMODULE)))
|
2017-05-16 10:39:41 +02:00
|
|
|
USEPKG += spiffs
|
|
|
|
USEMODULE += vfs
|
|
|
|
USEMODULE += spiffs_fs
|
|
|
|
USEMODULE += mtd
|
2016-07-11 09:54:03 +02:00
|
|
|
endif
|
2020-06-30 16:19:03 +02:00
|
|
|
|
2017-12-19 12:22:02 +01:00
|
|
|
ifneq (,$(filter littlefs,$(USEMODULE)))
|
|
|
|
USEPKG += littlefs
|
|
|
|
USEMODULE += vfs
|
|
|
|
USEMODULE += littlefs_fs
|
|
|
|
USEMODULE += mtd
|
|
|
|
endif
|
2016-07-11 09:54:03 +02:00
|
|
|
|
2020-06-30 16:19:03 +02:00
|
|
|
ifneq (,$(filter littlefs2,$(USEMODULE)))
|
|
|
|
USEPKG += littlefs2
|
|
|
|
USEMODULE += vfs
|
|
|
|
USEMODULE += littlefs2_fs
|
|
|
|
USEMODULE += mtd
|
|
|
|
endif
|
|
|
|
|
2017-05-16 16:24:48 +02:00
|
|
|
ifneq (,$(filter l2filter_%,$(USEMODULE)))
|
|
|
|
USEMODULE += l2filter
|
|
|
|
endif
|
|
|
|
|
2017-05-18 01:00:11 +02:00
|
|
|
ifneq (,$(filter gcoap,$(USEMODULE)))
|
2017-11-29 14:06:28 +01:00
|
|
|
USEMODULE += nanocoap
|
2020-02-16 14:04:11 +01:00
|
|
|
USEMODULE += gnrc_sock_async
|
|
|
|
USEMODULE += sock_async_event
|
2018-09-07 12:03:19 +02:00
|
|
|
USEMODULE += sock_util
|
2020-02-16 14:04:11 +01:00
|
|
|
USEMODULE += event_callback
|
|
|
|
USEMODULE += event_timeout
|
2017-05-18 01:00:11 +02:00
|
|
|
endif
|
|
|
|
|
2017-08-31 00:49:57 +02:00
|
|
|
ifneq (,$(filter luid,$(USEMODULE)))
|
|
|
|
FEATURES_OPTIONAL += periph_cpuid
|
|
|
|
endif
|
|
|
|
|
2017-11-29 14:06:28 +01:00
|
|
|
ifneq (,$(filter nanocoap_%,$(USEMODULE)))
|
|
|
|
USEMODULE += nanocoap
|
|
|
|
endif
|
|
|
|
|
2017-05-12 17:46:09 +02:00
|
|
|
ifneq (,$(filter fatfs_vfs,$(USEMODULE)))
|
2017-07-05 14:54:42 +02:00
|
|
|
USEPKG += fatfs
|
|
|
|
USEMODULE += vfs
|
2017-05-12 17:46:09 +02:00
|
|
|
endif
|
|
|
|
|
2017-12-20 11:32:16 +01:00
|
|
|
ifneq (,$(filter benchmark,$(USEMODULE)))
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
2018-04-05 11:10:40 +02:00
|
|
|
ifneq (,$(filter skald_%,$(USEMODULE)))
|
|
|
|
USEMODULE += skald
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter skald,$(USEMODULE)))
|
2019-06-12 17:39:42 +02:00
|
|
|
FEATURES_REQUIRED += radio_nrfble
|
2019-09-26 22:13:31 +02:00
|
|
|
USEMODULE += nrfble
|
2018-04-05 11:10:40 +02:00
|
|
|
USEMODULE += xtimer
|
|
|
|
USEMODULE += random
|
|
|
|
endif
|
2017-07-25 15:12:39 +02:00
|
|
|
|
2019-03-25 18:53:51 +01:00
|
|
|
ifneq (,$(filter bluetil_addr,$(USEMODULE)))
|
|
|
|
USEMODULE += fmt
|
|
|
|
endif
|
|
|
|
|
2019-07-05 13:50:20 +02:00
|
|
|
ifneq (,$(filter nimble_%,$(USEMODULE)))
|
|
|
|
USEPKG += nimble
|
|
|
|
endif
|
|
|
|
|
2019-11-12 14:52:18 +01:00
|
|
|
ifneq (,$(filter cord_common,$(USEMODULE)))
|
|
|
|
USEMODULE += fmt
|
|
|
|
USEMODULE += luid
|
2018-10-15 10:44:32 +02:00
|
|
|
USEMODULE += gcoap
|
2017-07-24 17:42:26 +02:00
|
|
|
endif
|
|
|
|
|
2019-11-12 14:52:18 +01:00
|
|
|
ifneq (,$(filter cord_lc cord_ep,$(USEMODULE)))
|
2018-04-10 14:44:01 +02:00
|
|
|
USEMODULE += core_thread_flags
|
2019-11-12 14:52:18 +01:00
|
|
|
USEMODULE += cord_common
|
2018-04-10 14:44:01 +02:00
|
|
|
ifneq (,$(filter shell_commands,$(USEMODULE)))
|
|
|
|
USEMODULE += sock_util
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2019-11-12 14:52:18 +01:00
|
|
|
ifneq (,$(filter cord_epsim,$(USEMODULE)))
|
|
|
|
USEMODULE += cord_common
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter cord_ep_standalone,$(USEMODULE)))
|
|
|
|
USEMODULE += cord_ep
|
|
|
|
USEMODULE += xtimer
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter cord_lc,$(USEMODULE)))
|
|
|
|
USEMODULE += clif
|
2017-07-25 15:12:39 +02:00
|
|
|
endif
|
|
|
|
|
2018-04-20 11:12:33 +02:00
|
|
|
ifneq (,$(filter tlsf-malloc,$(USEMODULE)))
|
|
|
|
USEPKG += tlsf
|
|
|
|
endif
|
|
|
|
|
2019-01-31 22:44:12 +01:00
|
|
|
ifneq (,$(filter usbus,$(USEMODULE)))
|
2020-03-24 14:33:09 +01:00
|
|
|
DEFAULT_MODULE += auto_init_usbus
|
2019-01-31 22:44:12 +01:00
|
|
|
FEATURES_REQUIRED += periph_usbdev
|
|
|
|
USEMODULE += core_thread_flags
|
|
|
|
USEMODULE += event
|
|
|
|
endif
|
|
|
|
|
2019-02-28 21:40:35 +01:00
|
|
|
ifneq (,$(filter usbus_cdc_acm,$(USEMODULE)))
|
|
|
|
USEMODULE += tsrb
|
|
|
|
USEMODULE += usbus
|
|
|
|
endif
|
|
|
|
|
2019-02-27 22:19:12 +01:00
|
|
|
ifneq (,$(filter usbus_cdc_ecm,$(USEMODULE)))
|
|
|
|
USEMODULE += iolist
|
|
|
|
USEMODULE += fmt
|
|
|
|
USEMODULE += usbus
|
|
|
|
USEMODULE += netdev_eth
|
|
|
|
USEMODULE += luid
|
|
|
|
endif
|
|
|
|
|
2018-04-28 11:33:06 +02:00
|
|
|
ifneq (,$(filter uuid,$(USEMODULE)))
|
|
|
|
USEMODULE += hashes
|
|
|
|
USEMODULE += random
|
2018-08-23 14:00:44 +02:00
|
|
|
USEMODULE += fmt
|
2018-04-28 11:33:06 +02:00
|
|
|
endif
|
|
|
|
|
2019-03-11 14:28:17 +01:00
|
|
|
ifneq (,$(filter riotboot_flashwrite, $(USEMODULE)))
|
|
|
|
USEMODULE += riotboot_slot
|
|
|
|
FEATURES_REQUIRED += periph_flashpage
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter riotboot_slot, $(USEMODULE)))
|
|
|
|
USEMODULE += riotboot_hdr
|
|
|
|
endif
|
|
|
|
|
2018-10-09 15:28:25 +02:00
|
|
|
ifneq (,$(filter riotboot_hdr, $(USEMODULE)))
|
|
|
|
USEMODULE += checksum
|
|
|
|
USEMODULE += riotboot
|
|
|
|
endif
|
|
|
|
|
2019-07-29 15:44:08 +02:00
|
|
|
ifneq (,$(filter irq_handler,$(USEMODULE)))
|
|
|
|
USEMODULE += event
|
|
|
|
endif
|
|
|
|
|
2019-06-05 10:54:25 +02:00
|
|
|
ifneq (,$(filter tinydtls_sock_dtls, $(USEMODULE)))
|
|
|
|
USEPKG += tinydtls
|
|
|
|
USEMODULE += sock_dtls
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter sock_dtls, $(USEMODULE)))
|
|
|
|
USEMODULE += credman
|
|
|
|
USEMODULE += sock_udp
|
|
|
|
endif
|
|
|
|
|
2020-02-26 14:48:24 +01:00
|
|
|
ifneq (,$(filter suit,$(USEMODULE)))
|
2019-10-24 14:39:58 +02:00
|
|
|
USEPKG += nanocbor
|
2019-07-05 11:57:55 +02:00
|
|
|
USEPKG += libcose
|
2019-10-16 09:53:46 +02:00
|
|
|
USEMODULE += libcose_crypt_c25519
|
2020-02-26 14:48:24 +01:00
|
|
|
USEMODULE += uuid
|
2019-07-05 11:57:55 +02:00
|
|
|
|
2020-02-26 14:48:24 +01:00
|
|
|
# tests/suit_manifest has some mock implementations,
|
|
|
|
# only add the non-mock dependencies if not building that test.
|
|
|
|
ifeq (,$(filter suit_transport_mock,$(USEMODULE)))
|
|
|
|
# SUIT depends on riotboot support and some extra riotboot modules
|
|
|
|
FEATURES_REQUIRED += riotboot
|
|
|
|
USEMODULE += riotboot_slot
|
|
|
|
USEMODULE += riotboot_flashwrite
|
|
|
|
USEMODULE += riotboot_flashwrite_verify_sha256
|
|
|
|
endif
|
2019-07-05 11:57:55 +02:00
|
|
|
endif
|
|
|
|
|
2020-02-26 14:48:24 +01:00
|
|
|
ifneq (,$(filter suit_transport_%, $(USEMODULE)))
|
|
|
|
USEMODULE += suit_transport
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter suit_transport_coap, $(USEMODULE)))
|
|
|
|
USEMODULE += nanocoap
|
2019-07-05 11:57:55 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter suit_%,$(USEMODULE)))
|
|
|
|
USEMODULE += suit
|
|
|
|
endif
|
|
|
|
|
2019-08-20 20:52:07 +02:00
|
|
|
# Enable periph_uart when periph_uart_nonblocking is enabled
|
|
|
|
ifneq (,$(filter periph_uart_nonblocking,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_uart
|
|
|
|
endif
|
|
|
|
|
2020-02-20 15:33:24 +01:00
|
|
|
# include ztimer dependencies
|
2020-02-20 11:51:06 +01:00
|
|
|
ifneq (,$(filter ztimer%,$(USEMODULE)))
|
|
|
|
include $(RIOTBASE)/sys/ztimer/Makefile.dep
|
2018-02-01 09:53:04 +01:00
|
|
|
endif
|
|
|
|
|
2020-02-20 15:33:24 +01:00
|
|
|
# handle xtimer's deps. Needs to be done *after* ztimer
|
|
|
|
ifneq (,$(filter xtimer,$(USEMODULE)))
|
|
|
|
ifeq (,$(filter ztimer_xtimer_compat,$(USEMODULE)))
|
|
|
|
# xtimer is used, ztimer xtimer wrapper is not
|
|
|
|
DEFAULT_MODULE += auto_init_xtimer
|
|
|
|
USEMODULE += div
|
|
|
|
ifeq (,$(filter xtimer_on_ztimer,$(USEMODULE)))
|
|
|
|
# ztimer is not used, so use *periph_timer as low-level timer*.
|
|
|
|
FEATURES_REQUIRED += periph_timer
|
|
|
|
else
|
|
|
|
# will use *ztimer_usec as low-level timer*
|
|
|
|
endif
|
|
|
|
else
|
|
|
|
# ztimer_xtimer_compat is used, all of *xtimer's API will be mapped on ztimer.*
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2018-08-26 09:20:56 +02:00
|
|
|
# Enable periph_gpio when periph_gpio_irq is enabled
|
|
|
|
ifneq (,$(filter periph_gpio_irq,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_gpio
|
|
|
|
endif
|
2017-07-27 11:37:46 +02:00
|
|
|
|
2020-04-18 01:26:32 +02:00
|
|
|
ifneq (,$(filter periph_timer_periodic,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_timer
|
|
|
|
endif
|
|
|
|
|
2017-07-27 11:37:46 +02:00
|
|
|
ifneq (,$(filter devfs_hwrng,$(USEMODULE)))
|
|
|
|
FEATURES_REQUIRED += periph_hwrng
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter devfs_random,$(USEMODULE)))
|
|
|
|
USEMODULE += random
|
|
|
|
endif
|
|
|
|
|
2017-09-09 12:41:15 +02:00
|
|
|
# always select gpio (until explicit dependencies are sorted out)
|
|
|
|
FEATURES_OPTIONAL += periph_gpio
|
|
|
|
|
2017-10-18 23:04:30 +02:00
|
|
|
# always select power management if available
|
|
|
|
FEATURES_OPTIONAL += periph_pm
|
|
|
|
|
2018-05-04 15:44:29 +02:00
|
|
|
# always select provided architecture features
|
|
|
|
FEATURES_REQUIRED += $(filter arch_%,$(FEATURES_PROVIDED))
|
2017-09-09 01:10:59 +02:00
|
|
|
|
2020-06-10 13:30:56 +02:00
|
|
|
# always select CPU core features
|
|
|
|
FEATURES_REQUIRED += $(filter cpu_core_%,$(FEATURES_PROVIDED))
|
|
|
|
|
2020-06-04 21:52:57 +02:00
|
|
|
# don't use idle thread if architecture has needed support
|
|
|
|
FEATURES_OPTIONAL += no_idle_thread
|
|
|
|
|
2020-02-11 19:25:55 +01:00
|
|
|
ifneq (,$(filter ecc_%,$(USEMODULE)))
|
|
|
|
USEMODULE += ecc
|
|
|
|
endif
|
|
|
|
|
2020-03-11 09:59:22 +01:00
|
|
|
ifneq (,$(filter test_utils_interactive_sync,$(USEMODULE)))
|
|
|
|
ifneq (,$(filter shell,$(USEMODULE)))
|
|
|
|
DEFAULT_MODULE += test_utils_interactive_sync_shell
|
|
|
|
endif
|
|
|
|
endif
|