geolib
This commit is contained in:
@@ -0,0 +1,3 @@
|
|||||||
|
[submodule "geographiclib"]
|
||||||
|
path = geographiclib
|
||||||
|
url = https://github.com/geographiclib/geographiclib.git
|
||||||
+13
-2
@@ -2,7 +2,13 @@ cmake_minimum_required(VERSION 3.13)
|
|||||||
|
|
||||||
option(BUILD_FOR_PICO "Build for Raspberry Pi Pico" ON)
|
option(BUILD_FOR_PICO "Build for Raspberry Pi Pico" ON)
|
||||||
|
|
||||||
|
set(GEOGRAPHICLIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/geographiclib)
|
||||||
|
|
||||||
|
# Configure GeographicLib before adding it, to skip docs/tools/tests
|
||||||
|
set(GEOGRAPHICLIB_LIB_TYPE "STATIC" CACHE STRING "" FORCE)
|
||||||
|
set(BUILD_DOCUMENTATION OFF CACHE BOOL "" FORCE)
|
||||||
|
set(BUILD_BOTH_LIBRARIES OFF CACHE BOOL "" FORCE)
|
||||||
|
set(PACKAGE_DEBIAN OFF CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
if(BUILD_FOR_PICO)
|
if(BUILD_FOR_PICO)
|
||||||
set(PICO_BOARD pico_w CACHE STRING "Board type")
|
set(PICO_BOARD pico_w CACHE STRING "Board type")
|
||||||
@@ -14,6 +20,9 @@ if(BUILD_FOR_PICO)
|
|||||||
|
|
||||||
pico_sdk_init()
|
pico_sdk_init()
|
||||||
|
|
||||||
|
add_subdirectory(${GEOGRAPHICLIB_DIR} EXCLUDE_FROM_ALL)
|
||||||
|
target_compile_options(GeographicLib PUBLIC -fexceptions -frtti)
|
||||||
|
|
||||||
add_executable(p-rad
|
add_executable(p-rad
|
||||||
src/main.cpp
|
src/main.cpp
|
||||||
src/core/logic.cpp
|
src/core/logic.cpp
|
||||||
@@ -22,7 +31,7 @@ if(BUILD_FOR_PICO)
|
|||||||
|
|
||||||
target_compile_definitions(p-rad PRIVATE PICO_BUILD)
|
target_compile_definitions(p-rad PRIVATE PICO_BUILD)
|
||||||
target_include_directories(p-rad PRIVATE src)
|
target_include_directories(p-rad PRIVATE src)
|
||||||
target_link_libraries(p-rad pico_stdlib pico_cyw43_arch_lwip_threadsafe_background hardware_rtc)
|
target_link_libraries(p-rad pico_stdlib pico_cyw43_arch_lwip_threadsafe_background hardware_rtc GeographicLib)
|
||||||
|
|
||||||
pico_enable_stdio_usb(p-rad 1)
|
pico_enable_stdio_usb(p-rad 1)
|
||||||
pico_enable_stdio_uart(p-rad 0)
|
pico_enable_stdio_uart(p-rad 0)
|
||||||
@@ -34,6 +43,8 @@ else()
|
|||||||
set(CMAKE_CXX_STANDARD 23)
|
set(CMAKE_CXX_STANDARD 23)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
|
add_subdirectory(${GEOGRAPHICLIB_DIR} EXCLUDE_FROM_ALL)
|
||||||
|
|
||||||
add_executable(p-rad
|
add_executable(p-rad
|
||||||
src/main.cpp
|
src/main.cpp
|
||||||
src/core/logic.cpp
|
src/core/logic.cpp
|
||||||
@@ -44,5 +55,5 @@ else()
|
|||||||
find_package(Threads REQUIRED)
|
find_package(Threads REQUIRED)
|
||||||
find_package(SDL3 REQUIRED CONFIG)
|
find_package(SDL3 REQUIRED CONFIG)
|
||||||
find_package(CURL REQUIRED)
|
find_package(CURL REQUIRED)
|
||||||
target_link_libraries(p-rad Threads::Threads SDL3::SDL3 CURL::libcurl)
|
target_link_libraries(p-rad Threads::Threads SDL3::SDL3 CURL::libcurl GeographicLib)
|
||||||
endif()
|
endif()
|
||||||
Reference in New Issue
Block a user