[Tarantool-patches] [PATCH v1 2/4] build: fix Werror warning in test/unit:fiber*.c*

Alexander V. Tikhonov avtikhon at tarantool.org
Wed Oct 14 19:35:44 MSK 2020


Building with gcc-4.8.5 on CentOS 7 found issue:

cd /source/build/usr/src/debug/tarantool-2.6.0.144/test/unit && /usr/bin/g++ ... -Wp,-D_FORTIFY_SOURCE=2 ... -O2 ... -O0 -o CMakeFiles/fiber.test.dir/fiber.cc.o -c /source/build/usr/src/debug/tarantool-2.6.0.144/test/unit/fiber.cc
In file included from /usr/include/inttypes.h:25:0,
                 from /source/build/usr/src/debug/tarantool-2.6.0.144/src/lib/small/small/region.h:34,
                 from /source/build/usr/src/debug/tarantool-2.6.0.144/src/lib/core/memory.h:33,
                 from /source/build/usr/src/debug/tarantool-2.6.0.144/test/unit/fiber.cc:1:
/usr/include/features.h:330:4: error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)

It happened because _FORTIFY_SOURCE=2 flag needed -O[1|2] optimization,
but latest set in command was -O0. To fix it added undefine flag:

  -U_FORTIFY_SOURCE

in test/unit/CmakeLists.txt file where -O0 was set.

Needed for #4941
---

Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4941-gcc-old
Issue: https://github.com/tarantool/tarantool/issues/4941

 test/unit/CMakeLists.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt
index aace8cf50..4fb46bbd5 100644
--- a/test/unit/CMakeLists.txt
+++ b/test/unit/CMakeLists.txt
@@ -77,11 +77,11 @@ add_executable(mp_error.test mp_error.cc core_test_utils.c)
 target_link_libraries(mp_error.test box_error core unit)
 
 add_executable(fiber.test fiber.cc core_test_utils.c)
-set_source_files_properties(fiber.cc PROPERTIES COMPILE_FLAGS -O0)
+set_source_files_properties(fiber.cc PROPERTIES COMPILE_FLAGS "-Wp,-U_FORTIFY_SOURCE -O0")
 target_link_libraries(fiber.test core unit)
 
 add_executable(fiber_stack.test fiber_stack.c core_test_utils.c)
-set_source_files_properties(fiber_stack.c PROPERTIES COMPILE_FLAGS -O0)
+set_source_files_properties(fiber_stack.c PROPERTIES COMPILE_FLAGS "-Wp,-U_FORTIFY_SOURCE -O0")
 target_link_libraries(fiber_stack.test core unit)
 
 if (NOT ENABLE_GCOV)
-- 
2.25.1



More information about the Tarantool-patches mailing list