Skip to content

Commit 2d31ab5

Browse files
authored
Merge pull request #3801 from luotao1/op_cmake
Simplify the CMakeLists for paddle/operator and paddle/pybind
2 parents b52e5c2 + 7f27b5e commit 2d31ab5

2 files changed

Lines changed: 22 additions & 42 deletions

File tree

paddle/operators/CMakeLists.txt

Lines changed: 21 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1+
file(GLOB GENERAL_OPS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "*_op.cc")
2+
string(REPLACE ".cc" "" GENERAL_OPS "${GENERAL_OPS}")
13
function(op_library TARGET)
24
# op_library is a function to create op library. The interface is same as
35
# cc_library. But it handle split GPU/CPU code and link some common library
46
# for ops.
7+
set(OP_LIBRARY ${TARGET} ${OP_LIBRARY} PARENT_SCOPE)
58
set(cc_srcs)
69
set(cu_srcs)
710
set(op_common_deps operator op_registry)
@@ -43,33 +46,26 @@ endfunction()
4346

4447
add_subdirectory(math)
4548

46-
cc_test(gather_test SRCS gather_test.cc DEPS tensor)
47-
op_library(gather_op SRCS gather_op.cc gather_op.cu)
48-
49-
cc_test(scatter_test SRCS scatter_test.cc DEPS tensor)
50-
op_library(scatter_op SRCS scatter_op.cc scatter_op.cu)
51-
52-
cc_library(net_op SRCS net_op.cc DEPS op_registry)
53-
cc_test(net_op_test SRCS net_op_test.cc DEPS net_op)
54-
55-
op_library(add_op SRCS add_op.cc add_op.cu)
56-
57-
op_library(mean_op SRCS mean_op.cc mean_op.cu)
49+
list(REMOVE_ITEM GENERAL_OPS
50+
net_op
51+
minus_op
52+
mul_op
53+
recurrent_op
54+
scale_op)
5855

56+
op_library(net_op SRCS net_op.cc)
57+
op_library(minus_op SRCS minus_op.cc minus_op.cu DEPS scale_op)
5958
op_library(mul_op SRCS mul_op.cc mul_op.cu DEPS math_function)
60-
op_library(rowwise_add_op SRCS rowwise_add_op.cu rowwise_add_op.cc)
59+
op_library(recurrent_op SRCS recurrent_op.cc rnn/recurrent_op_utils.cc
60+
DEPS framework_proto tensor operator net_op)
61+
op_library(scale_op SRCS scale_op.cc scale_op.cu DEPS net_op)
6162

62-
op_library(sigmoid_op SRCS sigmoid_op.cc sigmoid_op.cu)
63-
op_library(softmax_op SRCS softmax_op.cc softmax_op.cu)
64-
op_library(gaussian_random_op SRCS gaussian_random_op.cc gaussian_random_op.cu)
65-
op_library(cross_entropy_op SRCS cross_entropy_op.cc cross_entropy_op.cu)
66-
op_library(fill_zeros_like_op SRCS fill_zeros_like_op.cc fill_zeros_like_op.cu)
63+
foreach(src ${GENERAL_OPS})
64+
op_library(${src} SRCS ${src}.cc ${src}.cu)
65+
endforeach()
6766

68-
op_library(sgd_op SRCS sgd_op.cc sgd_op.cu)
67+
set(GLOB_OP_LIB ${OP_LIBRARY} CACHE INTERNAL "Global OP library")
6968

70-
op_library(recurrent_op SRCS recurrent_op.cc rnn/recurrent_op_utils.cc
71-
DEPS framework_proto tensor op_registry operator net_op)
72-
op_library(uniform_random_op SRCS uniform_random_op.cc uniform_random_op.cu)
73-
op_library(lookup_table_op SRCS lookup_table_op.cc lookup_table_op.cu)
74-
op_library(scale_op SRCS scale_op.cc scale_op.cu DEPS net_op)
75-
op_library(minus_op SRCS minus_op.cc minus_op.cu DEPS scale_op)
69+
cc_test(gather_test SRCS gather_test.cc DEPS tensor)
70+
cc_test(net_op_test SRCS net_op_test.cc DEPS net_op)
71+
cc_test(scatter_test SRCS scatter_test.cc DEPS tensor)

paddle/pybind/CMakeLists.txt

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,5 @@ if(WITH_PYTHON)
22
cc_library(paddle_pybind SHARED
33
SRCS pybind.cc
44
DEPS pybind python backward
5-
sgd_op
6-
gather_op
7-
scatter_op
8-
add_op
9-
mul_op
10-
rowwise_add_op
11-
sigmoid_op
12-
softmax_op
13-
mean_op
14-
cross_entropy_op
15-
recurrent_op
16-
uniform_random_op
17-
gaussian_random_op
18-
fill_zeros_like_op
19-
lookup_table_op
20-
scale_op
21-
minus_op)
5+
${GLOB_OP_LIB})
226
endif(WITH_PYTHON)

0 commit comments

Comments
 (0)