mirror of
https://github.com/JakeHillion/object-introspection.git
synced 2024-11-12 21:56:54 +00:00
Enable compiler warnings globally
With the previous method of enabling them on a target-by-target basis, it was very easy to accidentally miss a target. This had happened in a number of instances, e.g. "codegen" and "symbol_service".
This commit is contained in:
parent
d71a497df5
commit
24e108a81b
@ -27,6 +27,8 @@ option(WITH_FLAKY_TESTS "Build with flaky tests" On)
|
||||
option(FORCE_BOOST_STATIC "Build with static boost" On)
|
||||
option(FORCE_LLVM_STATIC "Build with static llvm and clang" On)
|
||||
|
||||
set_project_warnings()
|
||||
|
||||
if (ASAN)
|
||||
add_compile_options(-fsanitize=address -fno-omit-frame-pointer)
|
||||
add_link_options(-fsanitize=address)
|
||||
@ -38,7 +40,6 @@ if (CODE_COVERAGE)
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
## System checks
|
||||
## These checks are potentially fatal so perform them first.
|
||||
|
||||
@ -251,7 +252,6 @@ add_library(oicore
|
||||
oi/Serialize.cpp
|
||||
)
|
||||
add_dependencies(oicore libdrgn)
|
||||
set_project_warnings(oicore)
|
||||
target_include_directories(oicore SYSTEM PRIVATE ${LLVM_INCLUDE_DIRS} ${CLANG_INCLUDE_DIRS})
|
||||
target_compile_definitions(oicore PRIVATE ${LLVM_DEFINITIONS})
|
||||
|
||||
@ -311,7 +311,6 @@ add_executable(oilgen
|
||||
tools/OILGen.cpp
|
||||
oi/OIGenerator.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(oilgen
|
||||
drgn_utils
|
||||
oicore
|
||||
@ -319,17 +318,14 @@ target_link_libraries(oilgen
|
||||
|
||||
### Object Introspection cache Printer (OIP)
|
||||
add_executable(oip tools/OIP.cpp)
|
||||
set_project_warnings(oip)
|
||||
target_link_libraries(oip oicore)
|
||||
|
||||
### Object Introspection Tree Builder (OITB)
|
||||
add_executable(oitb tools/OITB.cpp)
|
||||
set_project_warnings(oitb)
|
||||
target_link_libraries(oitb oicore treebuilder)
|
||||
|
||||
### Object Introspection Debugger (OID)
|
||||
add_executable(oid oi/OID.cpp oi/OIDebugger.cpp)
|
||||
set_project_warnings(oid)
|
||||
|
||||
target_link_libraries(oid oicore oid_parser treebuilder)
|
||||
if (STATIC_LINK)
|
||||
|
@ -1,6 +1,6 @@
|
||||
# https://github.com/lefticus/cppbestpractices/blob/master/02-Use_the_Tools_Available.md
|
||||
|
||||
function(set_project_warnings project_name)
|
||||
function(set_project_warnings)
|
||||
option(WARNINGS_AS_ERRORS "Treat compiler warnings as errors" OFF)
|
||||
|
||||
set(MSVC_WARNINGS
|
||||
@ -79,6 +79,6 @@ function(set_project_warnings project_name)
|
||||
message(AUTHOR_WARNING "No compiler warnings set for '${CMAKE_CXX_COMPILER_ID}' compiler.")
|
||||
endif()
|
||||
|
||||
target_compile_options(${project_name} PUBLIC ${PROJECT_WARNINGS})
|
||||
add_compile_options(${PROJECT_WARNINGS})
|
||||
|
||||
endfunction()
|
||||
|
Loading…
Reference in New Issue
Block a user