Summary: Pull Request resolved: https://github.com/facebook/yoga/pull/1294 X-link: https://github.com/facebook/react-native/pull/37383 Add -Wextra to the build, and fixup some more instances of -Wunused-parameter that it sufaces which were not automatically fixable. Reviewed By: javache Differential Revision: D45772846 fbshipit-source-id: 29bf71006f63161521fe5869c3a7d8bf7aae9c81
52 lines
1.4 KiB
CMake
52 lines
1.4 KiB
CMake
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
#
|
|
# This source code is licensed under the MIT license found in the
|
|
# LICENSE file in the root directory of this source tree.
|
|
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
|
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
|
|
|
add_compile_definitions($<$<CONFIG:DEBUG>:DEBUG>)
|
|
|
|
if(MSVC)
|
|
|
|
add_compile_options(
|
|
# Don't omit frame pointers (e.g. for crash dumps)
|
|
/Oy-
|
|
# "Standard C++ exception handling" (C++ stack unwinding including extern c)
|
|
/EHsc
|
|
# Enable warnings and warnings as errors
|
|
/W3
|
|
/WX
|
|
# Disable RTTI
|
|
$<$<COMPILE_LANGUAGE:CXX>:/GR->
|
|
# Use /O2 (Maximize Speed)
|
|
$<$<CONFIG:RELEASE>:/O2>)
|
|
|
|
else()
|
|
|
|
add_compile_options(
|
|
# Don't omit frame pointers (e.g. for crash dumps)
|
|
-fno-omit-frame-pointer
|
|
# Enable exception handling
|
|
-fexceptions
|
|
# Enable warnings and warnings as errors
|
|
-Wall
|
|
-Wextra
|
|
-Werror
|
|
# Disable RTTI
|
|
$<$<COMPILE_LANGUAGE:CXX>:-fno-rtti>
|
|
# Use -O2 (prioritize speed)
|
|
$<$<CONFIG:RELEASE>:-O2>
|
|
# Enable separate sections per function/data item
|
|
$<$<CONFIG:RELEASE>:-ffunction-sections>
|
|
$<$<CONFIG:RELEASE>:-fdata-sections>)
|
|
|
|
add_link_options(
|
|
# Discard unused sections
|
|
$<$<CONFIG:RELEASE>:$<$<CXX_COMPILER_ID:Clang,GNU>:-Wl,--gc-sections>>
|
|
$<$<CONFIG:RELEASE>:$<$<CXX_COMPILER_ID:AppleClang>:-Wl,-dead_strip>>)
|
|
|
|
endif()
|