CMakelists样例-创新互联

1.cmake版本需求

cmake_minimum_required(VERSION 3.4.1)

我们拥有10余年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供做网站、网站设计、微信开发、小程序制作成都手机网站制作H5技术、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。

2.定义目录

set(COMMON_DIR ${PROJECT_DIR}/src/main/cpp/common)
set(TOOLKIT_DIR ${PROJECT_DIR}/src/main/cpp/toolkit)
set(LIBYUV_DIR ${TOOLKIT_DIR}/libyuv/libs)
set(LIBYUV_INCLUDE_DIR ${LIBYUV_DIR}/include)

3.依赖的头文件目录

include_directories(${COMMON_DIR}
${LIBYUV_INCLUDE_DIR}
${TOOLKIT_DIR})

4.链接库目录

link_directories(${LIBYUV_DIR}/${ANDROID_ABI})

5.定义生成库

add_library(Toolkits
SHARED
${TOOLKIT_DIR}/jni_interface.cpp)

6.根据cpu类型,设置特殊配置

if( ${ANDROID_ABI} MATCHES "armeabi-v7a" )

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -mfloat-abi=softfp -mfpu=neon -march=armv7-a -mtune=cortex-a8")

message(${ANDROID_ABI},当前启用neon设置)

endif(${ANDROID_ABI} MATCHES "armeabi-v7a")

7.设置编译参数

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_JNI_LOG=1")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DANDROID_STL=gnustl_static")
set(CMAKE_VERBOSE_MAKEFILE on)

8.目标链接库

target_link_libraries(Toolkits yuv)
target_link_libraries(Toolkits log)

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站名称:CMakelists样例-创新互联
分享链接:http://scyanting.com/article/dpdchh.html