CMakeLists.txt 1.35 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
    deconvolution.cpp
    dnnl.cpp
    eltwise.cpp
    erf.cpp
15
    fuse_ops.cpp
16
    gather.cpp
17
    gemm.cpp
18
    layernorm.cpp
19
    logsoftmax.cpp
Shucai Xiao's avatar
Shucai Xiao committed
20
    lowering.cpp
21
22
23
24
25
26
27
28
    lrn.cpp
    pooling.cpp
    reduction.cpp
    reorder.cpp
    softmax.cpp
    sub.cpp
    target.cpp
    write_literals.cpp
Paul's avatar
Paul committed
29
)
Paul's avatar
Paul committed
30
set_target_properties(migraphx_cpu PROPERTIES EXPORT_NAME cpu)
Paul's avatar
Paul committed
31
rocm_set_soversion(migraphx_cpu ${MIGRAPHX_SO_VERSION})
Paul's avatar
Paul committed
32

Paul's avatar
Paul committed
33
find_package(Threads)
34
find_package(dnnl REQUIRED)
Paul's avatar
Paul committed
35

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

40
41
42
43
44
45
46
47
48
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
49

50
51
target_link_libraries(migraphx_all_targets INTERFACE migraphx_cpu)

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