# Sets the minimum version of CMake required to build the native library.
cmake_minimum_required(VERSION 3.4.1)
# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source code.
# You can define multiple libraries, and CMake builds them for you.
# Gradle automatically packages shared libraries with your APK.
// 第一步就是加入直接的编写的c++文件。。。
add_library(# Sets the name of the library.
mp3-lite
# Sets the library as a shared library.
SHARED
# Provides a relative path to your source file(s).
src/main/cpp/audio_lame.c
)
//加入要引用的c++库。。。
add_library(mp3lame
SHARED
IMPORTED )
//设置要加入的动态链接库的地址。。。。
set_target_properties(mp3lame
PROPERTIES IMPORTED_LOCATION
../../../../libs/${CMAKE_ANDROID_ARCH_ABI}/libmp3lame.so )
//设置CMAKE_CXX_FLAGS
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
//这是在引入头文件。。
include_directories(src/main/cpp)
//找到ndk自带的动态链接库。。
find_library(# Sets the name of the path variable.
log-lib
log )
//把所有的库链接到我们写的第一个库上。。。。完成。。。。
target_link_libraries(# Specifies the target library.
mp3-lite
mp3lame
# Links the target library to the log library
# included in the NDK.
${log-lib} )