[build] cmake: Add NO_WERROR option to disable -Werror (#6071)

This commit is contained in:
swirl
2023-12-22 12:38:38 -08:00
committed by GitHub
parent 43fb6e9f87
commit d1793f077d
3 changed files with 16 additions and 3 deletions

View File

@@ -82,6 +82,9 @@ option(USE_SYSTEM_EIGEN "Use system eigen" OFF)
# Options for location of OpenCV Java.
set(OPENCV_JAVA_INSTALL_DIR "" CACHE PATH "Location to search for the OpenCV jar file")
# Options for compilation flags.
option(NO_WERROR "Disable -Werror flag during compilation" OFF)
# Set default build type to release with debug info (i.e. release mode optimizations
# are performed, but debug info still exists).
if(NOT CMAKE_BUILD_TYPE)

View File

@@ -63,6 +63,8 @@ The following build options are available:
* TODO
* `OPENCV_JAVA_INSTALL_DIR`
* Set this option to the location of the archive of the OpenCV Java bindings (it should be called opencv-xxx.jar, with the x'es being version numbers). NOTE: set it to the LOCATION of the file, not the file itself!
* `NO_WERROR` (OFF Default)
* This option will disable the `-Werror` compilation flag for non-MSVC builds.
## Build Setup

View File

@@ -1,9 +1,17 @@
macro(wpilib_target_warnings target)
if(NOT MSVC)
target_compile_options(
${target}
PRIVATE -Wall -pedantic -Wextra -Werror -Wno-unused-parameter ${WPILIB_TARGET_WARNINGS}
set(WARNING_FLAGS
-Wall
-pedantic
-Wextra
-Wno-unused-parameter
${WPILIB_TARGET_WARNINGS}
)
if(NOT NO_WERROR)
set(WARNING_FLAGS ${WARNING_FLAGS} -Werror)
endif()
target_compile_options(${target} PRIVATE ${WARNING_FLAGS})
else()
target_compile_options(
${target}