]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: expose pmem::pmemobj from rbd_internal
authorKefu Chai <kchai@redhat.com>
Thu, 2 Apr 2020 04:19:50 +0000 (12:19 +0800)
committerKefu Chai <kchai@redhat.com>
Fri, 3 Apr 2020 05:07:51 +0000 (13:07 +0800)
because `librbd/cache/rwl/Types.h` includes `libpmemobj.h`, without this
change, `cache/test_mock_ReplicatedWriteLog.cc` will fail to compile as
`libpmemobj.h` might not exist in the default directories compile search
for header files. and hence we could have following failure
```
ceph/src/test/librbd/cache/test_mock_ReplicatedWriteLog.cc:11:
86 /root/luyuan/community/github/ceph/src/librbd/cache/rwl/Types.h:8:10: fatal error: libpmemobj.h: No such file or directory
87 8 | #include <libpmemobj.h>
88 | ^~~~~~~~~~~~~~
89 compilation terminated.
90 src/test/librbd/CMakeFiles/unittest_librbd.dir/build.make:1814: recipe for target 'src/test/librbd/CMakeFiles/unittest_librbd.dir/cache/test_mock_ReplicatedWriteLog.cc.o' failed
91 make[3]: *** [src/test/librbd/CMakeFiles/unittest_librbd.dir/cache/test_mock_ReplicatedWriteLog.cc.o] Error 1
92 make[3]: *** Waiting for unfinished jobs....
93 CMakeFiles/Makefile2:20379: recipe for target 'src/test/librbd/CMakeFiles/unittest_librbd.dir/all' failed
94 make[2]: *** [src/test/librbd/CMakeFiles/unittest_librbd.dir/all] Error 2
95 CMakeFiles/Makefile2:20391: recipe for target 'src/test/librbd/CMakeFiles/unittest_librbd.dir/rule' failed
96 make[1]: *** [src/test/librbd/CMakeFiles/unittest_librbd.dir/rule] Error 2
97 Makefile:5375: recipe for target 'unittest_librbd' failed
```

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

index bcdc8af8e26839bf5b6851e236f88af3fc0fabb0..99e4e3bade181bd2aee879a846652d1762e1e4a6 100644 (file)
@@ -193,9 +193,9 @@ target_link_libraries(rbd_internal PRIVATE
   osdc)
 
 if(WITH_RBD_RWL)
-  target_link_libraries(rbd_internal PRIVATE
-    pmem::pmemobj
-    pmem::pmem)
+  target_link_libraries(rbd_internal
+    PUBLIC pmem::pmemobj
+    PRIVATE pmem::pmem)
 endif()
 
 add_library(librbd ${CEPH_SHARED}