opencv

Форк
0
/
riscv64-071-gcc.toolchain.cmake 
57 строк · 2.5 Кб
1
set(CMAKE_SYSTEM_NAME Linux)
2
set(CMAKE_SYSTEM_PROCESSOR riscv64)
3

4
set(CMAKE_CXX_COMPILER riscv64-unknown-linux-gnu-g++)
5
set(CMAKE_C_COMPILER  riscv64-unknown-linux-gnu-gcc)
6

7
# MangoPi MQ Pro - C906FD, C906FDV
8
# Lichee Pi 4A - C910, C910V (?)
9
# CanMV K230 - C908, C908V
10

11
# See https://github.com/T-head-Semi/gcc/blob/xuantie-gcc-10.4.0/gcc/config/riscv/riscv-cores.def
12

13
set(_enable_vector OFF)
14
if(CORE STREQUAL "C906FD")
15
  set(CMAKE_C_FLAGS_INIT "-mcpu=c906fd -mabi=lp64d  -mtune=c906fd")
16
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c906fd -mabi=lp64d  -mtune=c906fd")
17
elseif(CORE STREQUAL "C906FDV")
18
  set(CMAKE_C_FLAGS_INIT "-mcpu=c906fd -mabi=lp64d  -mtune=c906fd")
19
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c906fd -mabi=lp64d  -mtune=c906fd")
20
  # Disabled due to limited 64-bit SEW support
21
  # set(_enable_vector ON)
22
elseif(CORE STREQUAL "C908")
23
  set(CMAKE_C_FLAGS_INIT "-mcpu=c908 -mabi=lp64d  -mtune=c908")
24
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c908 -mabi=lp64d  -mtune=c908")
25
elseif(CORE STREQUAL "C908V")
26
  set(CMAKE_C_FLAGS_INIT "-mcpu=c908v -mabi=lp64d  -mtune=c908")
27
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c908v -mabi=lp64d  -mtune=c908")
28
  set(_enable_vector ON) # RVV 1.0
29
elseif(CORE STREQUAL "C910")
30
  set(CMAKE_C_FLAGS_INIT "-mcpu=c910 -mabi=lp64d -mtune=c910")
31
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c910 -mabi=lp64d -mtune=c910")
32
elseif(CORE STREQUAL "C910V")
33
  set(CMAKE_C_FLAGS_INIT "-march=rv64imafdcv0p7xthead -mabi=lp64d")
34
  set(CMAKE_CXX_FLAGS_INIT "-march=rv64imafdcv0p7xthead -mabi=lp64d")
35
  set(_enable_vector ON) # RVV 0.7.1
36
elseif(CORE STREQUAL "C920")
37
  set(CMAKE_C_FLAGS_INIT "-mcpu=c920 -mabi=lp64d  -mtune=c920")
38
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c920 -mabi=lp64d  -mtune=c920")
39
  set(_enable_vector ON) # RVV 0.7.1
40
elseif(CORE STREQUAL "C920V2")
41
  set(CMAKE_C_FLAGS_INIT "-mcpu=c920v2 -mabi=lp64d  -mtune=c920v2")
42
  set(CMAKE_CXX_FLAGS_INIT "-mcpu=c920v2 -mabi=lp64d  -mtune=c920v2")
43
  set(_enable_vector ON) # RVV 1.0
44
else()
45
  set(CMAKE_C_FLAGS_INIT "-march=rv64imafdc_zihintpause_zfh_zba_zbb_zbc_zbs_xtheadc -mabi=lp64d")
46
  set(CMAKE_CXX_FLAGS_INIT "-march=rv64imafdc_zihintpause_zfh_zba_zbb_zbc_zbs_xtheadc -mabi=lp64d")
47
endif()
48

49
if(_enable_vector)
50
  set(CMAKE_C_FLAGS_INIT "${CMAKE_C_FLAGS_INIT} -D__riscv_vector_071 -mrvv-vector-bits=128")
51
  set(CMAKE_CXX_FLAGS_INIT "${CMAKE_CXX_FLAGS_INIT} -D__riscv_vector_071 -mrvv-vector-bits=128")
52
endif()
53

54
if(ENABLE_GCOV)
55
  set(CMAKE_CXX_FLAGS_INIT "${CMAKE_CXX_FLAGS_INIT} -fprofile-arcs -ftest-coverage")
56
  set(CMAKE_C_FLAGS_INIT "${CMAKE_C_FLAGS_INIT} -fprofile-arcs -ftest-coverage")
57
endif()
58

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.