From: andre Ebersold Date: Mon, 13 May 2024 20:30:32 +0000 (+0200) Subject: Start Build LUFA USB Source. Warnings with compile flags pedantic and variadic macro X-Git-Url: https://git.ebersold.fr/?a=commitdiff_plain;h=393dd1c62f47952d8ae65c44f99037203e20b4ea;p=atmel%2Favr.git Start Build LUFA USB Source. Warnings with compile flags pedantic and variadic macro --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 46fba18..d82cb2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,12 +1,14 @@ cmake_minimum_required(VERSION 2.8) project(tinyapp) -SET(BUILD_TARGET "stm32g030" CACHE STRING "Target [stm32g030, stm32F103, atmega328p,atmega32u4]") +set(OPTSUBDIRS "") +set(BUILD_TARGET "stm32g030" CACHE STRING "Target [stm32g030, stm32F103, atmega328p,atmega32u4]") if("${BUILD_TARGET}" STREQUAL "atmega328p") include(${CMAKE_CURRENT_SOURCE_DIR}/rules/target-atmega328p.cmake) elseif ("${BUILD_TARGET}" STREQUAL "atmega32u4") include(${CMAKE_CURRENT_SOURCE_DIR}/rules/target-atmega32u4.cmake) + list(APPEND OPTSUBDIRS Externals/LUFA-210130) elseif ("${BUILD_TARGET}" STREQUAL "stm32g030") include(${CMAKE_CURRENT_SOURCE_DIR}/rules/target-stm32g030.cmake) else() @@ -14,12 +16,12 @@ else() endif() if (NOT CMAKE_BUILD_TYPE) - SET(CMAKE_BUILD_TYPE "Debug") -ENDIF(NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE "Debug") +endif(NOT CMAKE_BUILD_TYPE) -SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG") +set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG") -SUBDIRS(HAL Application Platform Communication Metadata) +SUBDIRS(HAL Application Platform Communication Metadata ${OPTSUBDIRS}) INCLUDE_DIRECTORIES("${tinyapp_SOURCE_DIR}") INCLUDE_DIRECTORIES("${tinyapp_SOURCE_DIR}/HAL") diff --git a/Externals/LUFA-210130/CMakeLists.txt b/Externals/LUFA-210130/CMakeLists.txt new file mode 100644 index 0000000..0b3d062 --- /dev/null +++ b/Externals/LUFA-210130/CMakeLists.txt @@ -0,0 +1,61 @@ +project(LUFA) + +set(LUFA_ROOT_PATH ${LUFA_SOURCE_DIR}/LUFA) +set(ARCH AVR8) +# Construct LUFA module source variables +set(LUFA_SRC_USB_COMMON ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/USBController_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/USBInterrupt_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/ConfigDescriptors.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/Events.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/USBTask.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Common/HIDParser.c +) + +set(LUFA_SRC_USB_HOST ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/Host_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/Pipe_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/PipeStream_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/HostStandardReq.c + ${LUFA_SRC_USB_COMMON} +) + +set(LUFA_SRC_USB_DEVICE ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/Device_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/Endpoint_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/${ARCH}/EndpointStream_${ARCH}.c + ${LUFA_ROOT_PATH}/Drivers/USB/Core/DeviceStandardReq.c + ${LUFA_SRC_USB_COMMON} +) + +set(LUFA_SRC_USBCLASS_DEVICE + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/AudioClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/CCIDClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/CDCClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/HIDClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/MassStorageClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/MIDIClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/PrinterClassDevice.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Device/RNDISClassDevice.c +) + +set(LUFA_SRC_USBCLASS_HOST ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/AudioClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/CDCClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/HIDClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/MassStorageClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/MIDIClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/PrinterClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/RNDISClassHost.c + ${LUFA_ROOT_PATH}/Drivers/USB/Class/Host/StillImageClassHost.c +) + +set(LUFA_SRC_USB ${LUFA_SRC_USB_COMMON} ${LUFA_SRC_USB_HOST} ${LUFA_SRC_USB_DEVICE}) + +set(LUFA_SRC_USBCLASS ${LUFA_SRC_USBCLASS_DEVICE} ${LUFA_SRC_USBCLASS_HOST}) + + + +add_avr_library( + avrUSB + ${LUFA_SRC_USB_COMMON} + ) + +target_compile_definitions(avrUSB-${AVR_MCU} PUBLIC F_USB=${MCU_SPEED}) diff --git a/rules/gcc-avr-common.cmake b/rules/gcc-avr-common.cmake index fa27335..aee7bc5 100644 --- a/rules/gcc-avr-common.cmake +++ b/rules/gcc-avr-common.cmake @@ -64,8 +64,12 @@ add_definitions("-fpack-struct") add_definitions("-fshort-enums") add_definitions("-Wall") add_definitions("-Werror") +if("${BUILD_TARGET}" STREQUAL "atmega32u4") +else() +# Causes problems with LUFA add_definitions("-pedantic") add_definitions("-pedantic-errors") +endif() add_definitions("-funsigned-char") add_definitions("-funsigned-bitfields") add_definitions("-ffunction-sections")