]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: use string(APPEND...) for appending cflags
authorKefu Chai <kchai@redhat.com>
Thu, 18 Jun 2020 08:33:54 +0000 (16:33 +0800)
committerKefu Chai <kchai@redhat.com>
Thu, 18 Jun 2020 08:40:14 +0000 (16:40 +0800)
* use string(APPEND...) for less repeatings
* `-rdynamic` is a linker option, so it should be added to
  `CMAKE_EXE_LINKER_FLAGS` for adding symbols to dynamic
  symbol tables so they can be consumed by plugins.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/CMakeLists.txt

index 801bbe5941f5bfba97a24a397f67ccc57681e048..ac80deb8641e81c35ecfdf468289a83eb2e20907 100644 (file)
@@ -57,7 +57,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL GNU)
     # The MINGW headers are missing some "const" qualifiers.
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fpermissive")
   else()
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -rdynamic")
+    string(APPEND CMAKE_EXE_LINKER_FLAGS " -rdynamic")
   endif()
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wstrict-null-sentinel -Woverloaded-virtual")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-new-ttp-matching")
@@ -70,7 +70,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL GNU)
   endif()
 elseif(CMAKE_CXX_COMPILER_ID STREQUAL Clang)
   set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_EXPORTS_C_FLAG}")
-  set(CMAKE_LINKER_FLAGS "${CMAKE_LINKER_FLAGS} -rdynamic -export-dynamic ${CMAKE_EXE_EXPORTS_C_FLAG}")
+  string(APPEND CMAKE_LINKER_FLAGS " -rdynamic -export-dynamic ${CMAKE_EXE_EXPORTS_C_FLAG}")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-inconsistent-missing-override -Wno-mismatched-tags")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-private-field")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-address-of-packed-member")
@@ -81,11 +81,11 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL Clang)
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-missing-braces -Wno-parentheses -Wno-deprecated-register")
   if(FREEBSD)
     # Need to use the GNU binutils linker to get versioning right.
-    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=/usr/local/bin/ld -Wno-unused-command-line-argument")
-    set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=/usr/local/bin/ld -Wno-unused-command-line-argument")
+    string(APPEND CMAKE_EXE_LINKER_FLAGS " -fuse-ld=/usr/local/bin/ld -Wno-unused-command-line-argument")
+    string(APPEND CMAKE_SHARED_LINKER_FLAGS " -fuse-ld=/usr/local/bin/ld -Wno-unused-command-line-argument")
   endif()
   if(APPLE)
-    set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -undefined dynamic_lookup")
+    string(APPEND CMAKE_SHARED_LINKER_FLAGS " -undefined dynamic_lookup")
   endif()
 endif(CMAKE_CXX_COMPILER_ID STREQUAL GNU)
 set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_CXX_FLAGS}")