mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-12-25 14:33:52 +01:00
Adds a separate board for native64 instead of the `NATIVE_64BIT` workaround. The files in `boards/native64` are more or less dummy files and just include the `boards/native` logic (similar to `openlabs-kw41z-mini-256kib`). The main logic for native is in `makefiles/arch/native.inc.mk`, `cpu/native` and `boards/native`. The remaining changes concern the build system, and change native board checks to native CPU checks to cover both boards.
43 lines
1.3 KiB
Makefile
43 lines
1.3 KiB
Makefile
ifeq (FreeBSD,$(OS))
|
|
DISABLE_LIBSTDCPP ?= 1
|
|
endif
|
|
|
|
FEATURES_PROVIDED += arch_native
|
|
FEATURES_PROVIDED += cpp
|
|
ifneq ($(DISABLE_LIBSTDCPP),1)
|
|
# libstdc++ on FreeBSD is broken (does not work with -m32)
|
|
# Override with "export DISABLE_LIBSTDCPP=0"
|
|
FEATURES_PROVIDED += libstdcpp
|
|
endif
|
|
FEATURES_PROVIDED += periph_cpuid
|
|
FEATURES_PROVIDED += periph_eeprom
|
|
FEATURES_PROVIDED += periph_flashpage
|
|
FEATURES_PROVIDED += periph_flashpage_pagewise
|
|
FEATURES_PROVIDED += periph_hwrng
|
|
FEATURES_PROVIDED += periph_pm
|
|
FEATURES_PROVIDED += periph_pwm
|
|
FEATURES_PROVIDED += periph_timer_periodic
|
|
FEATURES_PROVIDED += periph_timer_query_freqs
|
|
ifeq ($(OS) $(OS_ARCH),Linux x86_64)
|
|
# TODO: Add rust support for native 64 bit.
|
|
ifneq ($(BOARD),native64)
|
|
FEATURES_PROVIDED += rust_target
|
|
endif
|
|
endif
|
|
FEATURES_PROVIDED += ssp
|
|
|
|
ifeq ($(OS),Linux)
|
|
# Access to hardware SPI bus is only supported on Linux hosts
|
|
FEATURES_PROVIDED += periph_spi
|
|
# Hardware GPIO access is only available on Linux hosts
|
|
FEATURES_PROVIDED += periph_gpio periph_gpio_irq
|
|
# CAN is only supported on Linux through socketCAN
|
|
FEATURES_PROVIDED += periph_can
|
|
endif
|
|
|
|
# This configuration enables modules that are only available when using Kconfig
|
|
# module modelling
|
|
ifeq (1, $(TEST_KCONFIG))
|
|
KCONFIG_CPU_CONFIG += $(RIOTCPU)/native/native.config
|
|
endif
|