@@ -23,24 +23,24 @@ if(NOT DEFINED DEMO_NAME)
23
23
endif ()
24
24
25
25
include_directories ("${PADDLE_LIB} /" )
26
- include_directories ( "${PADDLE_LIB} /fluid_inference_install_dir /" )
27
- include_directories ("${PADDLE_LIB} /third_party/install/ protobuf/include" )
28
- include_directories ("${PADDLE_LIB} /third_party/install/ glog/include" )
29
- include_directories ("${PADDLE_LIB} /third_party/install/ gflags/include" )
30
- include_directories ("${PADDLE_LIB} /third_party/install/ xxhash/include" )
31
- include_directories ("${PADDLE_LIB} /third_party/install/ snappy/include" )
32
- include_directories ("${PADDLE_LIB} /third_party/install/ snappystream/include" )
33
- include_directories ("${PADDLE_LIB} /third_party/install/ zlib/include" )
26
+ set ( PADDLE_LIB_THIRD_PARTY_PATH "${PADDLE_LIB} /third_party/install /" )
27
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} protobuf/include" )
28
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} glog/include" )
29
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} gflags/include" )
30
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} xxhash/include" )
31
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} snappy/include" )
32
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} snappystream/include" )
33
+ include_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} zlib/include" )
34
34
include_directories ("${PADDLE_LIB} /third_party/boost" )
35
35
include_directories ("${PADDLE_LIB} /third_party/eigen3" )
36
36
37
- link_directories ("${PADDLE_LIB} /third_party/install/ snappy/lib" )
38
- link_directories ("${PADDLE_LIB} /third_party/install/ snappystream/lib" )
39
- link_directories ("${PADDLE_LIB} /third_party/install/ zlib/lib" )
40
- link_directories ("${PADDLE_LIB} /third_party/install/ protobuf/lib" )
41
- link_directories ("${PADDLE_LIB} /third_party/install/ glog/lib" )
42
- link_directories ("${PADDLE_LIB} /third_party/install/ gflags/lib" )
43
- link_directories ("${PADDLE_LIB} /third_party/install/ xxhash/lib" )
37
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} snappy/lib" )
38
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} snappystream/lib" )
39
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} zlib/lib" )
40
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} protobuf/lib" )
41
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} glog/lib" )
42
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} gflags/lib" )
43
+ link_directories ("${PADDLE_LIB_THIRD_PARTY_PATH} xxhash/lib" )
44
44
link_directories ("${PADDLE_LIB} /paddle/lib" )
45
45
46
46
if (WIN32 )
@@ -76,7 +76,7 @@ if (NOT WIN32)
76
76
endif (NOT WIN32 )
77
77
78
78
if (NOT WIN32 )
79
- set (NGRAPH_PATH "${PADDLE_LIB} /third_party/install/ ngraph" )
79
+ set (NGRAPH_PATH "${PADDLE_LIB_THIRD_PARTY_PATH} ngraph" )
80
80
if (EXISTS ${NGRAPH_PATH} )
81
81
include (GNUInstallDirs )
82
82
include_directories ("${NGRAPH_PATH} /include" )
@@ -86,15 +86,18 @@ if (NOT WIN32)
86
86
endif ()
87
87
88
88
if (WITH_MKL )
89
- include_directories ("${PADDLE_LIB} /third_party/install/mklml/include" )
90
- if (NOT WIN32 )
91
- set (MATH_LIB ${PADDLE_LIB} /third_party/install/mklml/lib/libmklml_intel${CMAKE_SHARED_LIBRARY_SUFFIX}
92
- ${PADDLE_LIB} /third_party/install/mklml/lib/libiomp5${CMAKE_SHARED_LIBRARY_SUFFIX} )
89
+ set (MATH_LIB_PATH "${PADDLE_LIB_THIRD_PARTY_PATH} mklml" )
90
+ include_directories ("${MATH_LIB_PATH} /include" )
91
+ if (WIN32 )
92
+ set (MATH_DLL ${MATH_LIB_PATH} /lib/mklml${CMAKE_SHARED_LIBRARY_SUFFIX}
93
+ ${MATH_LIB_PATH} /lib/libiomp5md${CMAKE_SHARED_LIBRARY_SUFFIX}
94
+ ${MATH_LIB_PATH} /lib/msvcr120${CMAKE_SHARED_LIBRARY_SUFFIX}
95
+ )
93
96
else ()
94
- set (MATH_LIB ${PADDLE_LIB} /third_party/install/mklml/ lib/libmklml ${CMAKE_SHARED_LIBRARY_SUFFIX}
95
- ${PADDLE_LIB} /third_party/install/mklml/ lib/libiomp5md ${CMAKE_SHARED_LIBRARY_SUFFIX} )
97
+ set (MATH_LIB ${MATH_LIB_PATH} / lib/libmklml_intel ${CMAKE_SHARED_LIBRARY_SUFFIX}
98
+ ${MATH_LIB_PATH} / lib/libiomp5 ${CMAKE_SHARED_LIBRARY_SUFFIX} )
96
99
endif ()
97
- set (MKLDNN_PATH "${PADDLE_LIB} /third_party/install/ mkldnn" )
100
+ set (MKLDNN_PATH "${PADDLE_LIB_THIRD_PARTY_PATH} mkldnn" )
98
101
if (EXISTS ${MKLDNN_PATH} )
99
102
include_directories ("${MKLDNN_PATH} /include" )
100
103
if (WIN32 )
@@ -104,7 +107,10 @@ if(WITH_MKL)
104
107
endif (WIN32 )
105
108
endif ()
106
109
else ()
107
- set (MATH_LIB ${PADDLE_LIB} /third_party/install/openblas/lib/libopenblas${CMAKE_STATIC_LIBRARY_SUFFIX} )
110
+ set (MATH_LIB ${PADDLE_LIB_THIRD_PARTY_PATH} openblas/lib/libopenblas${CMAKE_STATIC_LIBRARY_SUFFIX} )
111
+ if (WIN32 )
112
+ set (MATH_DLL ${PADDLE_LIB_THIRD_PARTY_PATH} openblas/lib/openblas${CMAKE_SHARED_LIBRARY_SUFFIX} )
113
+ endif ()
108
114
endif ()
109
115
110
116
# Note: libpaddle_inference_api.so/a must put before libpaddle_fluid.so/a
@@ -123,7 +129,7 @@ if (NOT WIN32)
123
129
else ()
124
130
set (DEPS ${DEPS}
125
131
${MATH_LIB} ${MKLDNN_LIB}
126
- glog gflags_static protobuf snappy zlibstatic xxhash snappystream ${EXTERNAL_LIB} )
132
+ glog gflags_static libprotobuf snappy zlibstatic xxhash snappystream ${EXTERNAL_LIB} )
127
133
set (DEPS ${DEPS} libcmt shlwapi.lib )
128
134
endif (NOT WIN32 )
129
135
@@ -143,3 +149,15 @@ endif()
143
149
144
150
add_executable (${DEMO_NAME} ${DEMO_NAME} .cc )
145
151
target_link_libraries (${DEMO_NAME} ${DEPS} )
152
+ if (WIN32 )
153
+ if (WITH_MKL )
154
+ add_custom_command (TARGET ${DEMO_NAME} POST_BUILD
155
+ COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_PATH} /lib/mkldnn.dll ${CMAKE_BINARY_DIR} /${CMAKE_BUILD_TYPE}
156
+ COMMAND ${CMAKE_COMMAND} -E copy ${MATH_DLL} ${CMAKE_BINARY_DIR} /${CMAKE_BUILD_TYPE}
157
+ )
158
+ else ()
159
+ add_custom_command (TARGET ${DEMO_NAME} POST_BUILD
160
+ COMMAND ${CMAKE_COMMAND} -E copy ${MATH_DLL} ${CMAKE_BINARY_DIR} /${CMAKE_BUILD_TYPE}
161
+ )
162
+ endif ()
163
+ endif ()
0 commit comments