mirror of
https://github.com/eledio-devices/thirdparty-ArduinoJson.git
synced 2025-11-01 08:48:30 +01:00
72 lines
1.5 KiB
CMake
72 lines
1.5 KiB
CMake
# Copyright Benoit Blanchon 2014-2016
|
|
# MIT License
|
|
#
|
|
# Arduino JSON library
|
|
# https://github.com/bblanchon/ArduinoJson
|
|
# If you like this project, please add a star!
|
|
|
|
file(GLOB_RECURSE HPP_FILES ../include/*.hpp)
|
|
file(GLOB_RECURSE IPP_FILES ../include/*.ipp)
|
|
file(GLOB_RECURSE CPP_FILES *.cpp)
|
|
|
|
if(CMAKE_CXX_COMPILER_ID MATCHES "(GNU|Clang)")
|
|
add_compile_options(
|
|
-fno-exceptions
|
|
-fno-rtti
|
|
-pedantic
|
|
-Wall
|
|
-Wcast-align
|
|
-Wcast-qual
|
|
-Wconversion
|
|
-Wctor-dtor-privacy
|
|
-Wdisabled-optimization
|
|
-Werror
|
|
-Wextra
|
|
-Wformat=2
|
|
-Winit-self
|
|
-Wmissing-include-dirs
|
|
-Wno-parentheses
|
|
-Wno-sign-conversion
|
|
-Wno-unused
|
|
-Wno-variadic-macros
|
|
-Wnon-virtual-dtor
|
|
-Wold-style-cast
|
|
-Woverloaded-virtual
|
|
-Wredundant-decls
|
|
-Wshadow
|
|
-Wsign-promo
|
|
-Wstrict-overflow=5
|
|
-Wundef
|
|
)
|
|
endif()
|
|
|
|
if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
|
add_compile_options(
|
|
-Wstrict-null-sentinel
|
|
)
|
|
|
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.5)
|
|
add_compile_options(-Wlogical-op) # the flag exists in 4.4 but is buggy
|
|
endif()
|
|
|
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.6)
|
|
add_compile_options(-Wnoexcept)
|
|
endif()
|
|
endif()
|
|
|
|
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
add_compile_options(
|
|
-Wc++11-compat
|
|
-Wdeprecated-register
|
|
)
|
|
endif()
|
|
|
|
if(MSVC)
|
|
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
|
add_compile_options(-W4)
|
|
endif()
|
|
|
|
add_library(ArduinoJson ${CPP_FILES} ${HPP_FILES} ${IPP_FILES})
|
|
|
|
target_include_directories(ArduinoJson INTERFACE ${CMAKE_CURRENT_LIST_DIR}/../include)
|