提交 b7397031 编写于 作者: Y Yu Yang

Add target_link_libraries for cc_library

It will fix #2728.

Maybe it is silly to `target_link_libraries` for static library,
because a static library do not need to link other libraries. But
it will tell cmake how to propagate dependencies.

The solution comes from
[here](http://floooh.github.io/2016/01/12/cmake-dependency-juggling.html).

* Also change op_proto_test DEPS for testing this fix works.
上级 9558770f
...@@ -162,6 +162,7 @@ function(cc_library TARGET_NAME) ...@@ -162,6 +162,7 @@ function(cc_library TARGET_NAME)
endif() endif()
if (cc_library_DEPS) if (cc_library_DEPS)
add_dependencies(${TARGET_NAME} ${cc_library_DEPS}) add_dependencies(${TARGET_NAME} ${cc_library_DEPS})
target_link_libraries(${TARGET_NAME} ${cc_library_DEPS})
endif() endif()
else(cc_library_SRCS) else(cc_library_SRCS)
if (cc_library_DEPS) if (cc_library_DEPS)
...@@ -211,6 +212,7 @@ function(nv_library TARGET_NAME) ...@@ -211,6 +212,7 @@ function(nv_library TARGET_NAME)
endif() endif()
if (nv_library_DEPS) if (nv_library_DEPS)
add_dependencies(${TARGET_NAME} ${nv_library_DEPS}) add_dependencies(${TARGET_NAME} ${nv_library_DEPS})
target_link_libraries(${TARGET_NAME} ${nv_library_DEPS})
endif() endif()
else(nv_library_SRCS) else(nv_library_SRCS)
if (nv_library_DEPS) if (nv_library_DEPS)
......
...@@ -7,4 +7,4 @@ cc_test(scope_test SRCS scope_test.cc) ...@@ -7,4 +7,4 @@ cc_test(scope_test SRCS scope_test.cc)
cc_test(enforce_test SRCS enforce_test.cc) cc_test(enforce_test SRCS enforce_test.cc)
proto_library(attr_type SRCS attr_type.proto) proto_library(attr_type SRCS attr_type.proto)
proto_library(op_proto SRCS op_proto.proto DEPS attr_type) proto_library(op_proto SRCS op_proto.proto DEPS attr_type)
cc_test(op_proto_test SRCS op_proto_test.cc DEPS op_proto attr_type protobuf) cc_test(op_proto_test SRCS op_proto_test.cc DEPS op_proto protobuf)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册