Skip to content

Commit

Permalink
Dependency to Arduino is optional
Browse files Browse the repository at this point in the history
  • Loading branch information
pschatzmann committed Aug 5, 2021
1 parent c3edda3 commit 1075414
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 15 deletions.
13 changes: 0 additions & 13 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,11 @@ cmake_minimum_required(VERSION 3.16)

# set the project name
project(arduino_helix)
include(FetchContent)

# lots of warnings and all warnings as errors
## add_compile_options(-Wall -Wextra )
set(CMAKE_CXX_STANDARD 17)

# Build with Linux Arduino Emulator
FetchContent_Declare(arduino_emulator GIT_REPOSITORY "https://github.com/pschatzmann/Arduino-Emulator.git" GIT_TAG main )
FetchContent_GetProperties(arduino_emulator)
if(NOT arduino_emulator_POPULATED)
FetchContent_Populate(arduino_emulator)
add_subdirectory(${arduino_emulator_SOURCE_DIR})
endif()


file(GLOB_RECURSE SRC_LIST_C CONFIGURE_DEPENDS "${PROJECT_SOURCE_DIR}/src/*.c" )

# define libraries
Expand All @@ -28,9 +18,6 @@ target_compile_options(arduino_helix PRIVATE -DUSE_DEFAULT_STDLIB)
# define location for header files
target_include_directories(arduino_helix PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/src/libhelix-mp3 ${CMAKE_CURRENT_SOURCE_DIR}/src/libhelix-aac )

# specify libraries
target_link_libraries(arduino_helix arduino_emulator)

# build examples
add_subdirectory( "${CMAKE_CURRENT_SOURCE_DIR}/examples/output_mp3")
add_subdirectory( "${CMAKE_CURRENT_SOURCE_DIR}/examples/output_aac")
13 changes: 12 additions & 1 deletion examples/output_aac/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,24 @@ cmake_minimum_required(VERSION 3.16)

# set the project name
project(aac)
include(FetchContent)

set (DCMAKE_CXX_FLAGS -Werror -Wall -Wextra)
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")
set (CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")

# Build with Linux Arduino Emulator
FetchContent_Declare(arduino_emulator GIT_REPOSITORY "https://github.com/pschatzmann/Arduino-Emulator.git" GIT_TAG main )
FetchContent_GetProperties(arduino_emulator)
if(NOT arduino_emulator_POPULATED)
FetchContent_Populate(arduino_emulator)
add_subdirectory(${arduino_emulator_SOURCE_DIR} arduino-emulator)
endif()


# build sketch as executable
add_executable (aac desktop_aac.cpp )
target_compile_options(aac PRIVATE -DEMULATOR)

# specify libraries
target_link_libraries(aac arduino_helix)
target_link_libraries(aac arduino_helix arduino_emulator)
12 changes: 11 additions & 1 deletion examples/output_mp3/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,24 @@ cmake_minimum_required(VERSION 3.16)

# set the project name
project(mp3)
include(FetchContent)

set (DCMAKE_CXX_FLAGS -Werror -Wall -Wextra)
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")
set (CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address")

# Build with Linux Arduino Emulator
FetchContent_Declare(arduino_emulator GIT_REPOSITORY "https://github.com/pschatzmann/Arduino-Emulator.git" GIT_TAG main )
FetchContent_GetProperties(arduino_emulator)
if(NOT arduino_emulator_POPULATED)
FetchContent_Populate(arduino_emulator)
add_subdirectory(${arduino_emulator_SOURCE_DIR} arduino-emulator)
endif()

# build sketch as executable
add_executable (mp3 desktop_mp3.cpp )
target_compile_options(mp3 PRIVATE -DEMULATOR)

# specify libraries
target_link_libraries(mp3 arduino_helix)
target_link_libraries(mp3 arduino_helix arduino_emulator)

0 comments on commit 1075414

Please sign in to comment.