CMakeLists.txt 1.32 KB
Newer Older
Paul's avatar
Paul committed
1

2
3
include(CheckCXXCompilerFlag)

Paul's avatar
Paul committed
4
add_library(migraphx_cpu
5
    allocate.cpp
6
7
    allocation_model.cpp
    binary.cpp
8
9
10
    concat.cpp
    convolution.cpp
    copy.cpp
11
12
13
14
15
    deconvolution.cpp
    dnnl.cpp
    eltwise.cpp
    erf.cpp
    gather.cpp
16
    gemm.cpp
17
    logsoftmax.cpp
Shucai Xiao's avatar
Shucai Xiao committed
18
    lowering.cpp
19
20
21
22
23
24
25
26
    lrn.cpp
    pooling.cpp
    reduction.cpp
    reorder.cpp
    softmax.cpp
    sub.cpp
    target.cpp
    write_literals.cpp
Paul's avatar
Paul committed
27
)
Paul's avatar
Paul committed
28
set_target_properties(migraphx_cpu PROPERTIES EXPORT_NAME cpu)
Paul's avatar
Paul committed
29
rocm_set_soversion(migraphx_cpu ${MIGRAPHX_SO_VERSION})
Paul's avatar
Paul committed
30

Paul's avatar
Paul committed
31
find_package(Threads)
32
find_package(dnnl REQUIRED)
Paul's avatar
Paul committed
33

Paul's avatar
Paul committed
34
rocm_clang_tidy_check(migraphx_cpu)
35
36
target_link_libraries(migraphx_cpu PRIVATE migraphx Threads::Threads)
target_link_libraries(migraphx_cpu PRIVATE DNNL::dnnl)
37

38
39
40
41
42
43
44
45
46
find_package(OpenMP)
target_link_libraries(migraphx_cpu PUBLIC OpenMP::OpenMP_CXX)
# Add library path to rpath to workaround issues with our broken packages
foreach(LIBRARY ${OpenMP_CXX_LIBRARIES})
    if(LIBRARY MATCHES "libomp")
        get_filename_component(LIBRARY_PATH "${LIBRARY}" PATH)
        target_link_libraries(migraphx_cpu PUBLIC -Wl,-rpath=${LIBRARY_PATH} -Wl,-rpath-link=${LIBRARY_PATH})
    endif()
endforeach()
mei-ye's avatar
mei-ye committed
47

48
49
target_link_libraries(migraphx_all_targets INTERFACE migraphx_cpu)

Paul's avatar
Paul committed
50
rocm_install_targets(
Paul's avatar
Paul committed
51
  TARGETS migraphx_cpu
Paul's avatar
Paul committed
52
53
54
  INCLUDE
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
mei-ye's avatar
mei-ye committed
55