88 lines
2.2 KiB
CMake
88 lines
2.2 KiB
CMake
# For more information about using CMake with Android Studio, read the
|
|
# documentation: https://d.android.com/studio/projects/add-native-code.html
|
|
|
|
# Sets the minimum version of CMake required to build the native library.
|
|
|
|
cmake_minimum_required(VERSION 3.10)
|
|
|
|
# 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.
|
|
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
set (HEADERS
|
|
Demo.hpp
|
|
manager/DirectoryManager.h
|
|
manager/Tok.h
|
|
model/APIInfo.h
|
|
model/CoverArt.h
|
|
model/Song.h
|
|
model/Token.h
|
|
model/User.h
|
|
repository/APIRepository.h
|
|
repository/BaseRepository.h
|
|
repository/CoverArtRepository.h
|
|
repository/RepeatRepository.h
|
|
repository/ShuffleRepository.h
|
|
repository/SongRepository.h
|
|
repository/TokenRepository.h
|
|
repository/UserRepository.h
|
|
types/ConnType.h
|
|
types/RepeatTypes.h
|
|
types/ShuffleTypes.h
|
|
utility/GeneralUtility.h
|
|
)
|
|
|
|
set(JSON_BuildTests OFF CACHE INTERNAL "")
|
|
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/json)
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/3rdparty/SQLiteCpp)
|
|
|
|
|
|
add_library(native-lib SHARED
|
|
Demo.cpp
|
|
${HEADERS}
|
|
)
|
|
|
|
|
|
find_library(log-lib
|
|
log
|
|
)
|
|
|
|
|
|
set (CURL_LIBRARY
|
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/android/${ANDROID_ABI}
|
|
)
|
|
|
|
|
|
set (CURL_INCLUDE_DIR
|
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/android/include/curl
|
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/android/include
|
|
)
|
|
|
|
set(SQLITECPP_INCLUDE
|
|
${CMAKE_CURRENT_LIST_DIR}/3rdparty/SQLiteCpp/include
|
|
)
|
|
|
|
add_library(boo STATIC IMPORTED)
|
|
|
|
set_target_properties(boo PROPERTIES IMPORTED_LOCATION
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/android/${ANDROID_ABI}/libcurl.a"
|
|
)
|
|
|
|
include_directories(${CURL_INCLUDE_DIR} ${SQLITECPP_INCLUDE} ${HEADERS})
|
|
|
|
target_link_libraries(native-lib PRIVATE
|
|
nlohmann_json::nlohmann_json
|
|
boo
|
|
SQLiteCpp
|
|
sqlite3
|
|
dl
|
|
${log-lib}
|
|
z
|
|
) |