CMakeLists.txt 20.1 KB
Newer Older
1
if(LITE_WITH_LIGHT_WEIGHT_FRAMEWORK OR (NOT LITE_WITH_LOG))
Y
Yan Chunwei 已提交
2 3 4 5 6
  lite_cc_library(place SRCS paddle_place.cc DEPS logging)
else()
  lite_cc_library(place SRCS paddle_place.cc DEPS glog)
endif(LITE_WITH_LIGHT_WEIGHT_FRAMEWORK)

7
if (LITE_ON_TINY_PUBLISH)
8 9
    set(CMAKE_CXX_FLAGS_RELEASE "-Os -DNDEBUG")
    set(CMAKE_C_FLAGS_RELEASE "-Os -DNDEBUG")
10
endif()
11 12

set(light_lib_DEPS light_api paddle_api paddle_api_light)
H
huzhiqiang 已提交
13

14
if ((NOT LITE_ON_TINY_PUBLISH) AND (LITE_WITH_CUDA OR LITE_WITH_X86 OR LITE_WITH_BM OR ARM_TARGET_OS STREQUAL "android" OR ARM_TARGET_OS STREQUAL "armlinux"))
15
    #full api dynamic library
16 17
    lite_cc_library(paddle_full_api_shared SHARED SRCS paddle_api.cc light_api.cc cxx_api.cc cxx_api_impl.cc light_api_impl.cc
                  DEPS paddle_api paddle_api_light  paddle_api_full)
18 19
    add_dependencies(paddle_full_api_shared op_list_h kernel_list_h framework_proto)
    target_link_libraries(paddle_full_api_shared framework_proto)
H
huzhiqiang 已提交
20
    if(LITE_WITH_X86)
21 22
        add_dependencies(paddle_full_api_shared xxhash)
        target_link_libraries(paddle_full_api_shared xxhash)
23
        if (NOT LITE_ON_MODEL_OPTIMIZE_TOOL)
24 25
            add_dependencies(paddle_full_api_shared dynload_mklml)
        endif()
26 27 28
        if(WIN32)
             target_link_libraries(paddle_full_api_shared shlwapi.lib)
        endif()
H
huzhiqiang 已提交
29
    endif()
30 31
    if(LITE_WITH_CUDA)
        target_link_libraries(paddle_full_api_shared ${math_cuda} "-Wl,--whole-archive" ${cuda_kernels} "-Wl,--no-whole-archive")
32 33
    endif(LITE_WITH_CUDA)

34
    #light api dynamic library
35 36 37 38 39
    lite_cc_library(paddle_light_api_shared SHARED SRCS paddle_api.cc light_api.cc light_api_impl.cc
                  DEPS ${light_lib_DEPS}
                  ARM_DEPS ${arm_kernels}
                  CV_DEPS paddle_cv_arm
                  NPU_DEPS ${npu_kernels}
H
hong19860320 已提交
40
                  APU_DEPS ${apu_kernels}
41
                  RKNPU_DEPS ${rknpu_kernels}
42
                  )
43

44
    add_dependencies(paddle_light_api_shared op_list_h kernel_list_h)
45 46 47
    if(WIN32)
        target_link_libraries(paddle_light_api_shared shlwapi.lib)
    endif()
H
hong19860320 已提交
48
    target_link_libraries(paddle_light_api_shared ${light_lib_DEPS} ${arm_kernels} ${npu_kernels} ${rknpu_kernels} ${apu_kernels})
49
    if(NOT APPLE AND NOT WIN32)
50 51 52 53 54 55 56
        set(LINK_MAP_FILE "${PADDLE_SOURCE_DIR}/lite/core/lite.map")
        set(LINK_FLAGS "-Wl,--version-script ${LINK_MAP_FILE}")
        add_custom_command(OUTPUT ${LINK_MAP_FILE} COMMAND ...)
        add_custom_target(custom_linker_map DEPENDS ${LINK_MAP_FILE})
        set_target_properties(paddle_full_api_shared PROPERTIES LINK_FLAGS ${LINK_FLAGS})
        add_dependencies(paddle_full_api_shared custom_linker_map)
   endif()
57
else()
58
    if ((ARM_TARGET_OS STREQUAL "android") OR (ARM_TARGET_OS STREQUAL "armlinux"))
59 60
        add_library(paddle_light_api_shared SHARED "")
        target_sources(paddle_light_api_shared PUBLIC ${__lite_cc_files} paddle_api.cc light_api.cc light_api_impl.cc)
61 62 63
        set(TARGET_COMIPILE_FLAGS "-fdata-sections")
        if (NOT (ARM_TARGET_LANG STREQUAL "clang")) #gcc
            set(TARGET_COMIPILE_FLAGS "${TARGET_COMIPILE_FLAGS} -flto")
64
        endif()
65
        set_target_properties(paddle_light_api_shared PROPERTIES COMPILE_FLAGS "${TARGET_COMIPILE_FLAGS}")
H
HappyAngel 已提交
66
        add_dependencies(paddle_light_api_shared op_list_h kernel_list_h)
67 68
        if (LITE_WITH_NPU)
            # Need to add HIAI runtime libs (libhiai.so) dependency
69
            target_link_libraries(paddle_light_api_shared ${npu_builder_libs} ${npu_runtime_libs})
70
        endif()
71 72 73 74 75
        if (LITE_WITH_RKNPU)
            # Need to add RKNPU runtime libs dependency
            target_link_libraries(paddle_light_api_shared ${rknpu_builder_libs} ${rknpu_runtime_libs})
        endif()

76 77 78
    endif()
endif()

Y
Yan Chunwei 已提交
79 80 81 82
if (WITH_TESTING)
    lite_cc_library(lite_api_test_helper SRCS lite_api_test_helper.cc
      DEPS scope optimizer target_wrapper_host model_parser program
           ${ops} ${host_kernels}
83
      CUDA_DEPS ${cuda_kernels}
84
      X86_DEPS ${x86_kernels}
85
      XPU_DEPS ${xpu_kernels}
86
      RKNPU_DEPS ${rknpu_kernels}
87
      BM_DEPS ${bm_kernels}
H
hong19860320 已提交
88 89 90
      MLU_DEPS ${mlu_kernels}
      APU_DEPS ${apu_kernels})

Y
Yan Chunwei 已提交
91 92 93 94 95 96
endif()
if(LITE_WITH_FPGA)
    set(light_api_deps ${light_api_deps} ${fpga_deps})
    set(cxx_api_deps ${cxx_api_deps} ${fpga_deps})
endif()

97 98 99 100 101
if(LITE_WITH_BM)
    set(light_api_deps ${light_api_deps} ${bm_deps})
    set(cxx_api_deps ${cxx_api_deps} ${bm_deps})
endif()

102 103 104 105 106 107
if(LITE_WITH_RKNPU)
    set(light_api_deps ${light_api_deps} ${rknpu_deps})
    set(cxx_api_deps ${cxx_api_deps} ${rknpu_deps})
endif()


Y
Yan Chunwei 已提交
108
message(STATUS "get ops ${ops}")
109
message(STATUS "get X86 kernels ${x86_kernels}")
110
message(STATUS "get CUDA kernels ${cuda_kernels}")
Y
Yan Chunwei 已提交
111 112
message(STATUS "get Host kernels ${host_kernels}")
message(STATUS "get ARM kernels ${arm_kernels}")
113
message(STATUS "get OpenCL kernels ${opencl_kernels}")
Y
Yan Chunwei 已提交
114
message(STATUS "get NPU kernels ${npu_kernels}")
H
hong19860320 已提交
115
message(STATUS "get APU kernels ${apu_kernels}")
116
message(STATUS "get XPU kernels ${xpu_kernels}")
117
message(STATUS "get RKNPU kernels ${rknpu_kernels}")
Y
Yan Chunwei 已提交
118
message(STATUS "get FPGA kernels ${fpga_kernels}")
119
message(STATUS "get BM kernels ${bm_kernels}")
120
message(STATUS "get MLU kernels ${mlu_kernels}")
Y
Yan Chunwei 已提交
121 122 123 124

# for full api
if (NOT LITE_ON_TINY_PUBLISH)
    set(cxx_api_deps
125
    scope optimizer target_wrapper_host model_parser program)
Y
Yan Chunwei 已提交
126
    lite_cc_library(cxx_api
127 128 129
                        SRCS cxx_api.cc
                        DEPS ${cxx_api_deps} ${ops} ${host_kernels} program
                        X86_DEPS ${x86_kernels}
130
                        CUDA_DEPS ${cuda_kernels}
131 132
                        ARM_DEPS ${arm_kernels}
                        CV_DEPS paddle_cv_arm
Z
zhupengyang 已提交
133 134
                        NPU_DEPS ${npu_kernels}
                        XPU_DEPS ${xpu_kernels}
H
hong19860320 已提交
135
                        APU_DEPS ${apu_kernels}
136
                        RKNPU_DEPS ${rknpu_kernels}
137
                        BM_DEPS ${bm_kernels}
138 139
                        CL_DEPS ${opencl_kernels}
                        FPGA_DEPS ${fpga_kernels})
Y
Yan Chunwei 已提交
140 141 142 143 144 145
endif()

# for light api
set(light_api_deps
    scope target_wrapper_host model_parser program)
if(LITE_WITH_CUDA)
146
    get_property(cuda_deps GLOBAL PROPERTY CUDA_MODULES)
Y
Yan Chunwei 已提交
147 148 149 150 151
    set(light_api_deps ${light_api_deps} target_wrapper_cuda)
endif()
lite_cc_library(light_api SRCS light_api.cc
        DEPS scope target_wrapper_host model_parser
            ${light_api_deps} ${ops} ${host_kernels} program
152
        CUDA_DEPS ${cuda_kernels}
Y
Yan Chunwei 已提交
153 154
        X86_DEPS ${x86_kernels}
        ARM_DEPS ${arm_kernels}
155
        CV_DEPS paddle_cv_arm
156
        NPU_DEPS ${npu_kernels}
H
hong19860320 已提交
157
        APU_DEPS ${apu_kernels}
158
        XPU_DEPS ${xpu_kernels}
159
        RKNPU_DEPS ${rknpu_kernels}
160
        CL_DEPS ${opencl_kernels}
161
        FPGA_DEPS ${fpga_kernels}
162 163
        BM_DEPS ${bm_kernels}
        MLU_DEPS ${mlu_kernels})
Y
Yan Chunwei 已提交
164 165 166 167 168 169 170 171 172 173

include(ExternalProject)
set(LITE_DEMO_INSTALL_DIR "${THIRD_PARTY_PATH}/inference_demo" CACHE STRING
        "A path setting inference demo download directories.")

if(WITH_TESTING)
    lite_cc_test(test_cxx_api SRCS cxx_api_test.cc
       DEPS cxx_api mir_passes lite_api_test_helper
       ${ops} ${host_kernels}
       X86_DEPS ${x86_kernels}
174
       CUDA_DEPS ${cuda_kernels}
Y
Yan Chunwei 已提交
175
       ARM_DEPS ${arm_kernels}
H
HappyAngel 已提交
176
       CV_DEPS paddle_cv_arm
Y
Yan Chunwei 已提交
177
       NPU_DEPS ${npu_kernels}
H
hong19860320 已提交
178
       APU_DEPS ${apu_kernels}
179
       XPU_DEPS ${xpu_kernels}
180
       RKNPU_DEPS ${rknpu_kernels}
Y
Yan Chunwei 已提交
181 182
       CL_DEPS ${opencl_kernels}
       FPGA_DEPS ${fpga_kernels}
183
       BM_DEPS ${bm_kernels}
184
       MLU_DEPS ${mlu_kernels}
Y
Yan Chunwei 已提交
185 186 187 188 189
       EXCLUDE_COMPILE_DEPS "ON"
       ARGS --model_dir=${LITE_MODEL_DIR}/lite_naive_model
            --optimized_model=${LITE_MODEL_DIR}/lite_naive_model_opt SERIAL)
    add_dependencies(test_cxx_api extern_lite_download_lite_naive_model_tar_gz)
    if(NOT LITE_WITH_LIGHT_WEIGHT_FRAMEWORK)
190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
        if(LITE_WITH_X86)
            lite_cc_test(test_googlenet SRCS test_googlenet_lite.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/googlenet)
            add_dependencies(test_googlenet extern_lite_download_GoogleNet_inference_tar_gz)
            lite_cc_test(test_mobilenetv1_lite_x86 SRCS test_mobilenetv1_lite_x86.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/mobilenet_v1)
            add_dependencies(test_mobilenetv1_lite_x86 extern_lite_download_mobilenet_v1_tar_gz)
            lite_cc_test(test_mobilenetv2_lite_x86 SRCS test_mobilenetv2_lite_x86.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/mobilenet_v2_relu)
            add_dependencies(test_mobilenetv2_lite_x86 extern_lite_download_mobilenet_v2_relu_tar_gz)
            lite_cc_test(test_inceptionv4_lite_x86 SRCS test_inceptionv4_lite_x86.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/inception_v4_simple)
            add_dependencies(test_inceptionv4_lite_x86 extern_lite_download_inception_v4_simple_tar_gz)
            lite_cc_test(test_resnet50_lite_x86 SRCS test_resnet50_lite_x86.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/resnet50)
            add_dependencies(test_resnet50_lite_x86 extern_lite_download_resnet50_tar_gz)
            lite_cc_test(test_step_rnn_lite_x86 SRCS test_step_rnn_lite_x86.cc
               DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
               ${ops} ${host_kernels} ${x86_kernels}
               ARGS --model_dir=${LITE_MODEL_DIR}/step_rnn)
            add_dependencies(test_step_rnn_lite_x86 extern_lite_download_step_rnn_tar_gz)
        endif()
222
        if(LITE_WITH_BM)
223
           lite_cc_test(test_classify_lite_bm SRCS test_classify_lite_bm.cc
224 225
              DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
              ${ops} ${host_kernels} ${bm_kernels} ${bm_bridges}
226 227 228 229 230
              ARGS --model_dir=${LITE_MODEL_DIR}/classify)
           lite_cc_test(test_yolov3_lite_bm SRCS test_yolov3_lite_bm.cc
              DEPS mir_passes lite_api_test_helper paddle_api_full paddle_api_light gflags utils
              ${ops} ${host_kernels} ${bm_kernels} ${bm_bridges}
              ARGS --model_dir=${LITE_MODEL_DIR}/yolov3)
231
        endif()
Y
Yan Chunwei 已提交
232 233 234 235
    endif()
endif()

if(LITE_WITH_LIGHT_WEIGHT_FRAMEWORK AND WITH_TESTING)
H
hong19860320 已提交
236
    set(lite_model_test_DEPS cxx_api mir_passes ${ops} ${host_kernels} ${arm_kernels} ${npu_kernels} ${apu_kernels} ${fpga_kernels})
Y
Yan Chunwei 已提交
237 238 239 240

    lite_cc_test(test_mobilenetv1_int8 SRCS mobilenetv1_int8_test.cc
       DEPS ${lite_model_test_DEPS}
       CL_DEPS ${opencl_kernels}
241
       ARGS --cl_path=${CMAKE_SOURCE_DIR}/lite/backends/opencl
Y
Yan Chunwei 已提交
242 243 244 245 246 247 248
        --model_dir=${LITE_MODEL_DIR}/MobilenetV1_quant SERIAL)
    add_dependencies(test_mobilenetv1_int8 extern_lite_download_MobileNetV1_quant_tar_gz)

    lite_cc_test(test_mobilenetv1 SRCS mobilenetv1_test.cc
       DEPS ${lite_model_test_DEPS}
       CL_DEPS ${opencl_kernels}
       NPU_DEPS ${npu_kernels} ${npu_bridges}
249
       ARGS --cl_path=${CMAKE_SOURCE_DIR}/lite/backends/opencl
Y
Yan Chunwei 已提交
250 251
            --model_dir=${LITE_MODEL_DIR}/mobilenet_v1 SERIAL)
    add_dependencies(test_mobilenetv1 extern_lite_download_mobilenet_v1_tar_gz)
252 253 254 255
    if(NOT WIN32)
       set(LINK_FLAGS "-Wl,--version-script ${PADDLE_SOURCE_DIR}/lite/core/lite.map")
       set_target_properties(test_mobilenetv1 PROPERTIES LINK_FLAGS "${LINK_FLAGS}")
    endif()
256

Y
Yan Chunwei 已提交
257 258 259
    lite_cc_test(test_mobilenetv2 SRCS mobilenetv2_test.cc
       DEPS ${lite_model_test_DEPS}
       CL_DEPS ${opencl_kernels}
260
       ARGS --cl_path=${CMAKE_SOURCE_DIR}/lite/backends/opencl
Y
Yan Chunwei 已提交
261 262
            --model_dir=${LITE_MODEL_DIR}/mobilenet_v2_relu SERIAL)
    add_dependencies(test_mobilenetv2 extern_lite_download_mobilenet_v2_relu_tar_gz)
263 264 265
    if(NOT WIN32)
        set_target_properties(test_mobilenetv2 PROPERTIES LINK_FLAGS "${LINK_FLAGS}")
    endif()
266

Y
Yan Chunwei 已提交
267
    lite_cc_test(test_resnet50 SRCS resnet50_test.cc
268
       DEPS ${lite_model_test_DEPS} paddle_api_light
Y
Yan Chunwei 已提交
269 270
       CL_DEPS ${opencl_kernels}
       FPGA_DEPS ${fpga_kernels}
271
       ARGS --cl_path=${CMAKE_SOURCE_DIR}/lite/backends/opencl
Y
Yan Chunwei 已提交
272 273 274 275 276 277 278 279 280 281 282
            --model_dir=${LITE_MODEL_DIR}/resnet50 SERIAL)
    add_dependencies(test_resnet50 extern_lite_download_resnet50_tar_gz)

    lite_cc_test(test_resnet50_fpga SRCS resnet50_test_fpga.cc
       DEPS ${lite_model_test_DEPS}
       CL_DEPS ${opencl_kernels}
       FPGA_DEPS ${fpga_kernels})

    lite_cc_test(test_inceptionv4 SRCS inceptionv4_test.cc
       DEPS ${lite_model_test_DEPS}
       CL_DEPS ${opencl_kernels}
283
       ARGS --cl_path=${CMAKE_SOURCE_DIR}/lite/backends/opencl
Y
Yan Chunwei 已提交
284
            --model_dir=${LITE_MODEL_DIR}/inception_v4 SERIAL)
285
    add_dependencies(test_inceptionv4 extern_lite_download_inception_v4_simple_tar_gz)
286

X
xiaogang 已提交
287
   # brief: we comment ocr_test_ut because we do not supply ocr model to test, it is the reference to infer nlp model
T
TianXiaogang 已提交
288 289 290 291 292 293 294
   # lite_cc_test(test_ocr_attention SRCS ocr_attention_test.cc
   #    DEPS ${lite_model_test_DEPS})

   # lite_cc_test(model_run_test_image SRCS model_run_test_image.cc
   #    DEPS ${lite_model_test_DEPS}
   #    CL_DEPS ${opencl_kernels}
   #    FPGA_DEPS ${fpga_kernels})
Y
Yan Chunwei 已提交
295 296
endif()

297
lite_cc_library(paddle_api SRCS paddle_api.cc DEPS op_params tensor device_info)
Y
Yan Chunwei 已提交
298 299 300

#-----------------------------------------------------------------------------------------------------
# The final inference library for both CxxConfig and MobileConfig.
301 302 303 304 305
if (LITE_ON_TINY_PUBLISH)
    lite_cc_library(paddle_api_light SRCS light_api_impl.cc DEPS light_api paddle_api stream)
else()
    lite_cc_library(paddle_api_light SRCS light_api_impl.cc DEPS light_api paddle_api)
endif()
Y
Yan Chunwei 已提交
306
if (NOT LITE_ON_TINY_PUBLISH)
307
    lite_cc_library(paddle_api_full SRCS cxx_api_impl.cc DEPS cxx_api paddle_api_light
308 309 310 311
        ${ops}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
H
hong19860320 已提交
312
        APU_DEPS ${apu_kernels}
313
        CL_DEPS ${opencl_kernels}
314 315
        FPGA_DEPS ${fpga_kernels}
        BM_DEPS ${bm_kernels})
Y
Yan Chunwei 已提交
316 317
    # The final inference library for just MobileConfig.
    bundle_static_library(paddle_api_full paddle_api_full_bundled bundle_full_api)
318
    target_link_libraries(paddle_api_full ${cuda_deps})
319
    get_property(fluid_modules GLOBAL PROPERTY FLUID_MODULES)
Y
Yan Chunwei 已提交
320
endif()
321

Y
Yan Chunwei 已提交
322 323 324
bundle_static_library(paddle_api_light paddle_api_light_bundled bundle_light_api)
#-----------------------------------------------------------------------------------------------------

325 326 327 328 329 330
# These tests needs CLI arguments, and is not supported in ARM CI.
# TODO(Superjomn) support latter.
lite_cc_test(test_light_api SRCS light_api_test.cc
        DEPS light_api program mir_passes paddle_api_light
        CL_DEPS ${opencl_kernels}
        FPGA_DEPS ${fpga_kernels}
331
        RKNPU_DEPS ${rknpu_kernels}
332
        BM_DEPS ${bm_kernels}
333 334 335 336 337 338
        ARGS --optimized_model=${LITE_MODEL_DIR}/lite_naive_model_opt SERIAL)

lite_cc_test(test_apis SRCS apis_test.cc
        DEPS cxx_api light_api ${ops} paddle_api_light
        CL_DEPS ${opencl_kernels}
        X86_DEPS ${x86_kernels}
339
        XPU_DEPS ${xpu_kernels}
340
        FPGA_DEPS ${fpga_kernels}
341
        RKNPU_DEPS ${rknpu_kernels}
342
        BM_DEPS ${bm_kernels}
343
        MLU_DEPS ${mlu_kernels}
344 345 346
        ARGS --model_dir=${LITE_MODEL_DIR}/lite_naive_model
        --optimized_model=${LITE_MODEL_DIR}/lite_naive_model_opt SERIAL)

Y
Yan Chunwei 已提交
347 348 349 350
if (LITE_WITH_JAVA AND LITE_WITH_ARM)
    add_subdirectory(android)
endif()

351
if (LITE_WITH_PYTHON)
S
sangoly 已提交
352 353 354
    add_subdirectory(python)
endif()

Y
Yan Chunwei 已提交
355 356 357
if (LITE_ON_TINY_PUBLISH)
    return()
endif()
358

359 360 361 362 363

# add library for opt_base
lite_cc_library(opt_base SRCS opt_base.cc cxx_api_impl.cc paddle_api.cc cxx_api.cc DEPS kernel op optimizer mir_passes utils)
add_dependencies(opt_base supported_kernel_op_info_h framework_proto all_kernel_faked_cc kernel_list_h)

364
if (LITE_ON_MODEL_OPTIMIZE_TOOL)
365 366
    message(STATUS "Compiling opt")
    lite_cc_binary(opt SRCS opt.cc cxx_api_impl.cc paddle_api.cc cxx_api.cc
367
        DEPS gflags kernel op optimizer mir_passes utils ${host_kernels})
368
    add_dependencies(opt op_list_h kernel_list_h all_kernel_faked_cc supported_kernel_op_info_h)
369 370
endif(LITE_ON_MODEL_OPTIMIZE_TOOL)

Y
Yan Chunwei 已提交
371 372 373
lite_cc_test(test_paddle_api SRCS paddle_api_test.cc DEPS paddle_api_full paddle_api_light
  ${ops}
  ARM_DEPS ${arm_kernels}
H
HappyAngel 已提交
374
  CV_DEPS paddle_cv_arm
Y
Yan Chunwei 已提交
375
  NPU_DEPS ${npu_kernels}
376
  XPU_DEPS ${xpu_kernels}
H
hong19860320 已提交
377
  APU_DEPS ${apu_kernels}
378
  RKNPU_DEPS ${rknpu_kernels}
Y
Yan Chunwei 已提交
379 380 381
  CL_DEPS ${opencl_kernels}
  X86_DEPS ${x86_kernels}
  FPGA_DEPS ${fpga_kernels}
382
  BM_DEPS ${bm_kernels}
383
  MLU_DEPS ${mlu_kernels}
Y
Yan Chunwei 已提交
384 385 386 387 388 389 390
  ARGS --model_dir=${LITE_MODEL_DIR}/lite_naive_model SERIAL)
if (WITH_TESTING)
    add_dependencies(test_paddle_api extern_lite_download_lite_naive_model_tar_gz)
endif()

# Some bins
if(NOT IOS)
391 392 393 394 395 396
    lite_cc_binary(test_model_bin SRCS model_test.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
        XPU_DEPS ${xpu_kernels}
397
        MLU_DEPS ${mlu_kernels}
H
hong19860320 已提交
398
        APU_DEPS ${apu_kernels}
399
        CL_DEPS ${opencl_kernels}
400
        BM_DEPS ${bm_kernels}
401
        RKNPU_DEPS ${rknpu_kernels}
402 403 404
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
405 406 407 408 409 410 411
    
    lite_cc_binary(test_model_detection_bin SRCS model_test_detection.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
        XPU_DEPS ${xpu_kernels}
412
        MLU_DEPS ${mlu_kernels}
H
hong19860320 已提交
413
        APU_DEPS ${apu_kernels}
414 415
        CL_DEPS ${opencl_kernels}
        BM_DEPS ${bm_kernels}
416
        RKNPU_DEPS ${rknpu_kernels}
417 418 419 420 421 422 423 424 425 426
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
    
    lite_cc_binary(test_model_classify_bin SRCS model_test_classify.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
        XPU_DEPS ${xpu_kernels}
427
        MLU_DEPS ${mlu_kernels}
H
hong19860320 已提交
428
        APU_DEPS ${apu_kernels}
429 430
        CL_DEPS ${opencl_kernels}
        BM_DEPS ${bm_kernels}
431
        RKNPU_DEPS ${rknpu_kernels}
432 433 434
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
H
HappyAngel 已提交
435

436 437 438
    lite_cc_binary(benchmark_bin SRCS benchmark.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
H
HappyAngel 已提交
439
        CV_DEPS paddle_cv_arm
440 441
        NPU_DEPS ${npu_kernels}
        XPU_DEPS ${xpu_kernels}
442
        RKNPU_DEPS ${rknpu_kernels}
443
        MLU_DEPS ${mlu_kernels}
H
hong19860320 已提交
444
        APU_DEPS ${apu_kernels}
445 446 447 448
        CL_DEPS ${opencl_kernels}
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
449
    
X
xiaogang 已提交
450 451 452 453 454
    lite_cc_binary(multithread_test SRCS lite_multithread_test.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
H
hong19860320 已提交
455
        APU_DEPS ${apu_kernels}
X
xiaogang 已提交
456
        XPU_DEPS ${xpu_kernels}
457
        RKNPU_DEPS ${rknpu_kernels}
458
        MLU_DEPS ${mlu_kernels}
X
xiaogang 已提交
459
        CL_DEPS ${opencl_kernels}
460
	BM_DEPS ${bm_kernels}
X
xiaogang 已提交
461 462 463
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
464

X
xiaogang 已提交
465 466 467 468 469
    lite_cc_binary(test_transformer SRCS transform_test.cc DEPS paddle_api_full paddle_api_light gflags utils
        ${ops} ${host_kernels}
        ARM_DEPS ${arm_kernels}
        CV_DEPS paddle_cv_arm
        NPU_DEPS ${npu_kernels}
470
        RKNPU_DEPS ${npu_kernels}
X
xiaogang 已提交
471
        XPU_DEPS ${xpu_kernels}
H
hong19860320 已提交
472
        APU_DEPS ${apu_kernels}
X
xiaogang 已提交
473 474 475 476
        CL_DEPS ${opencl_kernels}
        FPGA_DEPS ${fpga_kernels}
        X86_DEPS ${x86_kernels}
        CUDA_DEPS ${cuda_kernels})
Y
Yan Chunwei 已提交
477 478 479 480 481 482
endif()

#lite_cc_binary(cxx_api_bin SRCS cxx_api_bin.cc
    #X86_DEPS operator
    #DEPS light_api model_parser target_wrapper_host mir_passes
    #ARM_DEPS ${arm_kernels}) NPU_DEPS ${npu_kernels})