adf59101f1e47c6ee7899f7af9d3f48ce36b0333
[platform/upstream/openblas.git] / cmake / export.cmake
1
2 #Only generate .def for dll on MSVC
3 if(MSVC)
4
5 set_source_files_properties(${OpenBLAS_DEF_FILE} PROPERTIES GENERATED 1)
6
7 if (NOT DEFINED ARCH)
8   set(ARCH_IN "x86_64")
9 else()
10   set(ARCH_IN ${ARCH})
11 endif()
12
13 if (${CORE} STREQUAL "generic")
14   set(ARCH_IN "GENERIC")
15 endif ()
16
17 if (NOT DEFINED EXPRECISION)
18   set(EXPRECISION_IN 0)
19 else()
20   set(EXPRECISION_IN ${EXPRECISION})
21 endif()
22
23 if (NOT DEFINED NO_CBLAS)
24   set(NO_CBLAS_IN 0)
25 else()
26   set(NO_CBLAS_IN ${NO_CBLAS})
27 endif()
28
29 if (NOT DEFINED NO_LAPACK)
30   set(NO_LAPACK_IN 0)
31 else()
32   set(NO_LAPACK_IN ${NO_LAPACK})
33 endif()
34
35 if (NOT DEFINED NO_LAPACKE)
36   set(NO_LAPACKE_IN 0)
37 else()
38   set(NO_LAPACKE_IN ${NO_LAPACKE})
39 endif()
40
41 if (NOT DEFINED NEED2UNDERSCORES)
42   set(NEED2UNDERSCORES_IN 0)
43 else()
44   set(NEED2UNDERSCORES_IN ${NEED2UNDERSCORES})
45 endif()
46
47 if (NOT DEFINED ONLY_CBLAS)
48   set(ONLY_CBLAS_IN 0)
49 else()
50   set(ONLY_CBLAS_IN ${ONLY_CBLAS})
51 endif()
52
53 add_custom_command(
54   TARGET ${OpenBLAS_LIBNAME} PRE_LINK 
55   COMMAND perl 
56   ARGS "${CMAKE_SOURCE_DIR}/exports/gensymbol" "win2k" "${ARCH_IN}" "dummy" "${EXPRECISION_IN}" "${NO_CBLAS_IN}" "${NO_LAPACK_IN}" "${NO_LAPACKE_IN}" "${NEED2UNDERSCORES_IN}" "${ONLY_CBLAS_IN}" "${SYMBOLPREFIX}" "${SYMBOLSUFFIX}" > "${PROJECT_BINARY_DIR}/openblas.def"
57   COMMENT "Create openblas.def file"
58   VERBATIM)
59
60 endif()