ncnn
28 строк · 1.2 Кб
1# set cross-compiled system type, it's better not use the type which cmake cannot recognized.
2set(CMAKE_SYSTEM_NAME Linux)
3set(CMAKE_SYSTEM_PROCESSOR arm)
4# when hislicon SDK was installed, toolchain was installed in the path as below:
5set(CMAKE_C_COMPILER "/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-gcc")
6set(CMAKE_CXX_COMPILER "/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-g++")
7set(CMAKE_FIND_ROOT_PATH "/opt/hisi-linux/x86-arm/arm-hisiv300-linux" )
8
9# set searching rules for cross-compiler
10if(NOT CMAKE_FIND_ROOT_PATH_MODE_PROGRAM)
11set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12endif()
13if(NOT CMAKE_FIND_ROOT_PATH_MODE_LIBRARY)
14set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
15endif()
16if(NOT CMAKE_FIND_ROOT_PATH_MODE_INCLUDE)
17set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
18endif()
19if(NOT CMAKE_FIND_ROOT_PATH_MODE_PACKAGE)
20set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
21endif()
22
23# set ${CMAKE_C_FLAGS} and ${CMAKE_CXX_FLAGS}flag for cross-compiled process
24set(CMAKE_CXX_FLAGS "-march=armv7-a -mfloat-abi=softfp -mfpu=neon-vfpv4 ${CMAKE_CXX_FLAGS}")
25
26# cache flags
27set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c flags")
28set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING "c++ flags")
29