Fix linux build, tweaks to make CMakeLists properly portable

This commit is contained in:
2022-06-28 19:04:26 -06:00
parent 6a774d6c69
commit 5eb58c9643
3 changed files with 10 additions and 20 deletions

5
.gitignore vendored
View File

@@ -52,7 +52,8 @@ _deps
.LSOverride .LSOverride
# Icon must end with two \r # Icon must end with two \r
Icon Icon
# Thumbnails # Thumbnails
._* ._*
@@ -89,3 +90,5 @@ Temporary Items
# Build directory # Build directory
build*/ build*/
/cmake-build-debug-pico/
/cmake-build-release-pico/

View File

@@ -8,29 +8,16 @@ set(CMAKE_CXX_STANDARD 17)
# Enforce board type # Enforce board type
set(PICO_BOARD "adafruit_feather_rp2040") set(PICO_BOARD "adafruit_feather_rp2040")
# Determine current platform
if (APPLE)
set(HomeLocation "/Users")
elseif (UNIX AND NOT APPLE)
set(HomeLocation "/home")
endif()
message(HomeLocation="${HomeLocation}")
# Initialise pico_sdk from installed location # Initialise pico_sdk from installed location
# (note this can come from environment, CMake cache etc) # (note this can come from environment, CMake cache etc)
set(PICO_SDK_PATH "${HomeLocation}/mchapman/source/pico/pico-sdk") # set(PICO_SDK_PATH "${HOME}/source/pico/pico-sdk")
# Initialize adafruit arduino library locations
set(GfxLibLocation "${HomeLocation}/mchapman/source/pico-arduino-compat/libs/adafruit-gfx-library")
set(Sh110xLibLocation "${HomeLocation}/mchapman/source/pico-arduino-compat/libs/adafruit-sh110x")
# Pull in Raspberry Pi Pico SDK (must be before project) # Pull in Raspberry Pi Pico SDK (must be before project)
include(pico_sdk_import.cmake) include(pico_sdk_import.cmake)
project(traegerController C CXX ASM) project(traegerController C CXX ASM)
add_subdirectory(${GfxLibLocation} pac-adafruit-gfx-library) add_subdirectory("$ENV{HOME}/source/pico-arduino-compat/libs/adafruit-sh110x" build_adafruit-sh110x)
add_subdirectory(${Sh110xLibLocation} pac-adafruit-sh110x)
# Initialise the Raspberry Pi Pico SDK # Initialise the Raspberry Pi Pico SDK
pico_sdk_init() pico_sdk_init()
@@ -42,8 +29,8 @@ add_executable(traegerController traegerController.cpp traegerLogo.h)
pico_set_program_name(traegerController "traegerController") pico_set_program_name(traegerController "traegerController")
pico_set_program_version(traegerController "0.1") pico_set_program_version(traegerController "0.1")
pico_enable_stdio_uart(traegerController 0) pico_enable_stdio_uart(traegerController 1)
pico_enable_stdio_usb(traegerController 1) pico_enable_stdio_usb(traegerController 0)
# Add the standard library to the build # Add the standard library to the build
target_link_libraries(traegerController pico_stdlib) target_link_libraries(traegerController pico_stdlib)
@@ -53,8 +40,8 @@ target_link_libraries(traegerController
hardware_spi hardware_spi
hardware_i2c hardware_i2c
hardware_timer hardware_timer
pac-adafruit-sh110x
pac-adafruit-gfx-library pac-adafruit-gfx-library
pac-adafruit-sh110x
) )
pico_add_extra_outputs(traegerController) pico_add_extra_outputs(traegerController)

View File

@@ -1,6 +1,6 @@
#include <stdio.h> #include <stdio.h>
#include "Adafruit_GFX.h" #include "Adafruit_GFX.h"
#include "Adafruit_SH110x.h" #include "Adafruit_SH110X.h":
#include "pico/stdlib.h" #include "pico/stdlib.h"
#include "pico/multicore.h" #include "pico/multicore.h"
#include "hardware/spi.h" #include "hardware/spi.h"