You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

icu4c.cmake 2.0 kB

5 years ago
5 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. set(LIB_ICU_COMMON icuuc)
  2. set(LIB_ICU_DATA icudata)
  3. set(LIB_ICU_I18N icui18n)
  4. if(ENABLE_GITEE)
  5. set(REQ_URL "https://gitee.com/mirrors/icu/repository/archive/release-67-1.tar.gz")
  6. set(MD5 "72415ffd1af3acf19f9aa3fa82c7b5bc")
  7. else()
  8. set(REQ_URL "https://github.com/unicode-org/icu/archive/release-67-1.tar.gz")
  9. set(MD5 "fd525fb47d8827b0b7da78b51dd2d93f")
  10. endif()
  11. if(CMAKE_SYSTEM_NAME MATCHES "Windows")
  12. message("icu4c thirdparty do not support windows currently.")
  13. else()
  14. set(JSON_FILE "{ \n\
  15. \"strategy\": \"additive\",\n\
  16. \"featureFilters\": {\n\
  17. \"normalization\": \"include\"\n\
  18. }\n\
  19. }\
  20. ")
  21. file(WRITE ${CMAKE_BINARY_DIR}/icu4c_filter.json ${JSON_FILE})
  22. if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
  23. mindspore_add_pkg(icu4c
  24. VER 67.1
  25. LIBS ${LIB_ICU_COMMON} ${LIB_ICU_DATA} ${LIB_ICU_I18N}
  26. URL ${REQ_URL}
  27. MD5 ${MD5}
  28. PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/icu4c/icu4c.patch01
  29. CONFIGURE_COMMAND ./icu4c/source/runConfigureICU MacOSX --enable-rpath --disable-tests --disable-samples --disable-icuio --disable-extras ICU_DATA_FILTER_FILE=${CMAKE_BINARY_DIR}/icu4c_filter.json
  30. )
  31. else()
  32. mindspore_add_pkg(icu4c
  33. VER 67.1
  34. LIBS ${LIB_ICU_COMMON} ${LIB_ICU_DATA} ${LIB_ICU_I18N}
  35. URL ${REQ_URL}
  36. MD5 ${MD5}
  37. PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/icu4c/icu4c.patch01
  38. CONFIGURE_COMMAND ./icu4c/source/runConfigureICU Linux --enable-rpath --disable-tests --disable-samples --disable-icuio --disable-extras ICU_DATA_FILTER_FILE=${CMAKE_BINARY_DIR}/icu4c_filter.json
  39. )
  40. endif()
  41. include_directories(${icu4c_INC})
  42. add_library(mindspore::icuuc ALIAS icu4c::${LIB_ICU_COMMON})
  43. add_library(mindspore::icudata ALIAS icu4c::${LIB_ICU_DATA})
  44. add_library(mindspore::icui18n ALIAS icu4c::${LIB_ICU_I18N})
  45. add_definitions(-D ENABLE_ICU4C)
  46. endif()