]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
cmake: build tracepoint libraries for vstart target
authorMohamad Gebai <mgebai@suse.com>
Wed, 5 Apr 2017 14:34:56 +0000 (10:34 -0400)
committerMohamad Gebai <mgebai@suse.com>
Thu, 6 Apr 2017 12:34:28 +0000 (08:34 -0400)
Avoid a segfault in TracepointProvider::verify_config() when building
for the 'vstart' target. TracepointProvider tries to load the tracepoint
providers libraries at runtime, but these aren't built as part of the
'vstart' target.

Signed-off-by: Mohamad Gebai <mgebai@suse.com>
src/CMakeLists.txt
src/tracing/CMakeLists.txt

index 69401efc062bffe7464f28e7a9bcf031e2fb403f..a684b59aee3cfa9dc655e5e551a3cd17ec4d9d4a 100644 (file)
@@ -1038,6 +1038,9 @@ if(WITH_RADOSGW)
   add_dependencies(vstart radosgw radosgw-admin)
 endif(WITH_RADOSGW)
 
+if(WITH_LTTNG)
+  add_dependencies(vstart tracepoint_libraries)
+endif(WITH_LTTNG)
 
 # Everything you need to run CephFS tests
 add_custom_target(cephfs_testing DEPENDS
index c8cf41a945e37ac445b22edc29805654d6c07ec7..6caa91cd722c737a6bfef832b6aa8dcbceff1a20 100644 (file)
@@ -6,6 +6,8 @@ set(working_dir ${CMAKE_BINARY_DIR}/include)
 set(header_dir ${working_dir}/tracing)
 file(MAKE_DIRECTORY ${header_dir})
 
+add_custom_target(tracepoint_libraries)
+
 file(GLOB tps "*.tp")
 foreach(tp ${tps})
   get_filename_component(name ${tp} NAME_WE)
@@ -36,6 +38,7 @@ function(add_tracing_library name tracings version)
     VERSION ${version}
     SOVERSION ${soversion}
     INSTALL_RPATH "")
+  add_dependencies(tracepoint_libraries ${name})
 endfunction()
 
 set(osd_traces oprequest.tp osd.tp pg.tp)