1cmake_minimum_required(VERSION 3.6.0) 2 3# Inhibit all of CMake's own NDK handling code. 4set(CMAKE_SYSTEM_VERSION 1) 5 6set(CMAKE_SYSTEM_NAME Linux) 7 8list(APPEND CMAKE_FIND_ROOT_PATH "${OHOS_NDK}") 9if(NOT CMAKE_FIND_ROOT_PATH_MODE_PROGRAM) 10 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) 11endif() 12 13if(NOT CMAKE_FIND_ROOT_PATH_MODE_LIBRARY) 14 set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) 15endif() 16 17if(NOT CMAKE_FIND_ROOT_PATH_MODE_INCLUDE) 18 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) 19endif() 20 21if(NOT CMAKE_FIND_ROOT_PATH_MODE_PACKAGE) 22 set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) 23endif() 24 25set (CMAKE_LINKER "${OHOS_NDK}/bin/lld") 26 27set(CMAKE_C_COMPILER_ID_RUN TRUE) 28set(CMAKE_CXX_COMPILER_ID_RUN TRUE) 29set(CMAKE_C_COMPILER_ID Clang) 30set(CMAKE_CXX_COMPILER_ID Clang) 31set(CMAKE_C_COMPILER_VERSION 9.0) 32set(CMAKE_CXX_COMPILER_VERSION 9.0) 33set(CMAKE_C_STANDARD_COMPUTED_DEFAULT 11) 34set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT 15) 35set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU") 36set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU") 37 38set(CMAKE_C_STANDARD_LIBRARIES_INIT "-latomic -lm") 39set(CMAKE_CXX_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}") 40 41set(CMAKE_CXX_FLAGS "-fuse-ld=lld -isystem ${OHOS_NDK}/include/c++/v1 ${CMAKE_CXX_FLAGS}") 42set(CMAKE_C_COMPILER "${OHOS_NDK}/bin/clang") 43set(CMAKE_CXX_COMPILER "${OHOS_NDK}/bin/clang++") 44set(STD_LINKER_FLAGS "-L ${OHOS_NDK}/lib/x86_64-unknown-linux-gnu -Wl,-rpath,${OHOS_NDK}/lib/x86_64-unknown-linux-gnu -lc++") 45set(CMAKE_SHARED_LINKER_FLAGS "${STD_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS}") 46set(CMAKE_MODULE_LINKER_FLAGS "${STD_LINKER_FLAGS} ${CMAKE_MODULE_LINKER_FLAGS}") 47set(CMAKE_EXE_LINKER_FLAGS "${STD_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}") 48