Alain Carlucci 2023-11-01 13:08:59 +01:00
rodzic f194c3fbc9
commit e92426396d
6 zmienionych plików z 88 dodań i 8 usunięć

Wyświetl plik

@ -3,11 +3,11 @@ set(CMAKE_SYSTEM_PROCESSOR cortex-m4)
set(triple arm-miosix-eabi)
set(MIOSIX_ROOT /opt/arm-miosix-eabi CACHE PATH "Miosix root directory")
set(CMAKE_SYSROOT ${MIOSIX_ROOT})
set(CMAKE_C_COMPILER ${MIOSIX_ROOT}/bin/arm-miosix-eabi-gcc CACHE FILEPATH "Miosix C compiler")
set(CMAKE_CXX_COMPILER ${MIOSIX_ROOT}/bin/arm-miosix-eabi-g++ CACHE FILEPATH "Miosix C++ compiler")
set(CMAKE_LINKER ${MIOSIX_ROOT}/bin/arm-miosix-eabi-ld CACHE FILEPATH "Miosix linker")
#set(CMAKE_C_LINK_EXECUTABLE ${MIOSIX_ROOT}/bin/arm-miosix-eabi-ld CACHE FILEPATH "Miosix linker")
#set(CMAKE_CXX_LINK_EXECUTABLE ${MIOSIX_ROOT}/bin/arm-miosix-eabi-ld CACHE FILEPATH "Miosix linker")
set(CMAKE_AR ${MIOSIX_ROOT}/bin/arm-miosix-eabi-ar CACHE FILEPATH "Miosix archiver")
set(CMAKE_ASM_COMPILER ${MIOSIX_ROOT}/bin/arm-miosix-eabi-as CACHE FILEPATH "Miosix assembler")
set(CMAKE_SIZE ${MIOSIX_ROOT}/bin/arm-miosix-eabi-size CACHE FILEPATH "Miosix size")
@ -16,10 +16,10 @@ set(CMAKE_OBJDUMP ${MIOSIX_ROOT}/bin/arm-miosix-eabi-objdump CACHE FILEPATH "Mio
set(CMAKE_RANLIB ${MIOSIX_ROOT}/bin/arm-miosix-eabi-ranlib CACHE FILEPATH "Miosix ranlib")
set(CMAKE_STRIP ${MIOSIX_ROOT}/bin/arm-miosix-eabi-strip CACHE FILEPATH "Miosix strip")
SET(CMAKE_C_FLAGS "-D_DEFAULT_SOURCE=1 -ffunction-sections -fdata-sections -Wall -Werror=return-type -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Os" CACHE STRING "" FORCE)
SET(CMAKE_CXX_FLAGS "-D_DEFAULT_SOURCE=1 -ffunction-sections -fdata-sections -Wall -Werror=return-type -fno-exceptions -fno-rtti -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -D__NO_EXCEPTIONS -Os" CACHE STRING "" FORCE)
SET(CMAKE_C_FLAGS_INIT "-D_DEFAULT_SOURCE=1 -ffunction-sections -fdata-sections -Wall -Werror=return-type -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Os" CACHE STRING "" FORCE)
SET(CMAKE_CXX_FLAGS_INIT "-D_DEFAULT_SOURCE=1 -ffunction-sections -fdata-sections -Wall -Werror=return-type -fno-exceptions -fno-rtti -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -D__NO_EXCEPTIONS -Os" CACHE STRING "" FORCE)
SET(CMAKE_EXE_LINKER_FLAGS "-mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -ffunction-sections -fdata-sections -fno-exceptions -fno-rtti -Wl,-L../lib/miosix-kernel -Wl,--gc-sections -Wl,-Map,main.map -Wl,--warn-common -nostdlib -lstdc++ -lc -lm -lgcc -latomic" CACHE STRING "" FORCE)
SET(CMAKE_EXE_LINKER_FLAGS_INIT "-mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -ffunction-sections -fdata-sections -fno-exceptions -fno-rtti -Wl,-L../lib/miosix-kernel -Wl,--gc-sections -Wl,-Map,main.map -Wl,--warn-common -nostdlib" CACHE STRING "" FORCE)
set(CMAKE_C_STANDARD_COMPUTED_DEFAULT 11)
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT 14)

Wyświetl plik

@ -44,3 +44,5 @@ target_compile_definitions(miosix PUBLIC
-D_POSIX_PRIORITY_SCHEDULING=1
-D_ARCH_CORTEXM4=1
)
target_link_libraries(miosix PUBLIC platform -lm -latomic -lstdc++ -lgcc -lc)

Wyświetl plik

@ -33,5 +33,5 @@ add_library(Core STATIC ${SOURCE_FILES})
target_link_libraries(Core PUBLIC minmea)
if(OPENRTX_TARGET MATCHES "radio")
target_link_libraries(Core PUBLIC miosix)
target_link_libraries(Core PUBLIC miosix platform)
endif()

Wyświetl plik

@ -5,5 +5,5 @@ add_library(RTX STATIC ${SOURCE_FILES})
target_link_libraries(RTX PRIVATE Protocols)
if(OPENRTX_TARGET MATCHES "radio")
target_link_libraries(RTX PUBLIC miosix)
target_link_libraries(RTX PUBLIC miosix platform)
endif()

Wyświetl plik

@ -5,5 +5,5 @@ add_library(UI STATIC ${SOURCE_FILES})
target_link_libraries(UI PRIVATE Core)
if(OPENRTX_TARGET MATCHES "radio")
target_link_libraries(UI PUBLIC miosix)
target_link_libraries(UI PUBLIC miosix platform)
endif()

Wyświetl plik

@ -0,0 +1,78 @@
if(OPENRTX_TARGET MATCHES "radio")
set(mdx_srcs
# MDx source
drivers/ADC/ADC1_MDx.c
drivers/GPS/GPS_MDx.cpp
drivers/NVM/W25Qx.c
drivers/NVM/nvmem_settings_MDx.c
drivers/audio/audio_MDx.c
drivers/baseband/HR_Cx000.cpp
drivers/tones/toneGenerator_MDx.cpp
# MD3x0 sources
drivers/NVM/nvmem_MD3x0.c
drivers/CPS/cps_io_native_MD3x0.c
drivers/NVM/spiFlash_MD3x.c
drivers/baseband/SKY72310.c
drivers/baseband/radio_MD3x0.cpp
drivers/baseband/HR_C5000_MDx.cpp
drivers/keyboard/keyboard_MD3x.c
drivers/display/HX8353_MD3x.cpp
drivers/backlight/backlight_MDx.c
targets/MD-3x0/platform.c
)
set(stm32_srcs
# STM32
mcu/STM32F4xx/boot/startup.cpp
mcu/STM32F4xx/boot/bsp.cpp
mcu/STM32F4xx/boot/libc_integration.cpp
mcu/STM32F4xx/drivers/usb/usb_bsp.c
mcu/STM32F4xx/drivers/usb/usb_core.c
mcu/STM32F4xx/drivers/usb/usb_dcd.c
mcu/STM32F4xx/drivers/usb/usb_dcd_int.c
mcu/STM32F4xx/drivers/usb/usbd_desc.c
mcu/STM32F4xx/drivers/usb/usbd_core.c
mcu/STM32F4xx/drivers/usb/usbd_ioreq.c
mcu/STM32F4xx/drivers/usb/usbd_req.c
mcu/STM32F4xx/drivers/usb/usbd_usr.c
mcu/STM32F4xx/drivers/gpio.c
mcu/STM32F4xx/drivers/usb_vcom.c
mcu/STM32F4xx/drivers/delays.cpp
mcu/STM32F4xx/drivers/rtc.c
mcu/STM32F4xx/drivers/SPI2.c
mcu/STM32F4xx/drivers/USART3.cpp
mcu/STM32F4xx/drivers/flash.c
drivers/audio/stm32_dac.cpp
drivers/audio/stm32_adc.cpp
drivers/audio/stm32_pwm.cpp
mcu/CMSIS/Device/ST/STM32F4xx/Source/system_stm32f4xx.c
)
add_library(platform STATIC
${mdx_srcs}
${stm32_srcs}
)
target_include_directories(platform PUBLIC
mcu/CMSIS/Include
mcu/CMSIS/Device/ST/STM32F4xx/Include
mcu/STM32F4xx
mcu/STM32F4xx/drivers
mcu/STM32F4xx/drivers/usb
targets/MD-3x0
drivers/ADC
drivers/NVM
drivers/GPS
drivers/USB
drivers/tones
drivers/baseband
drivers/backlight
drivers/chSelector
)
target_link_libraries(platform PUBLIC miosix Core)
endif()