Android support
This commit is contained in:
@@ -1,19 +1,15 @@
|
||||
|
||||
# This is a CMake example for Python and Java
|
||||
|
||||
INCLUDE(UseSWIG)
|
||||
INCLUDE(UseJava)
|
||||
|
||||
SET(CMAKE_SWIG_FLAGS -package pt.up.yap.lib)
|
||||
|
||||
SET(SWIG_SOURCES
|
||||
../yap.i
|
||||
)
|
||||
|
||||
# set(ANDROID_SO_OUTDIR ${libdir})
|
||||
# set(CMAKE_SWIG_OUTDIR ${CMAKE_SOURCE_DIR}/android/yaplib/build/generated/source/pt/up/yap/lib)
|
||||
#set(CMAKE_SWIG_OUTDIR ${CMAKE_CURRENT_BINARY_DIR}/derived)
|
||||
|
||||
|
||||
SET_SOURCE_FILES_PROPERTIES(${SWIG_SOURCES} PROPERTIES CPLUSPLUS ON)
|
||||
|
||||
include_directories (
|
||||
@@ -22,55 +18,8 @@
|
||||
${JNI_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
if ( ${C_COMPILER} MATCHES "Clang")
|
||||
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-missing-prototypes")
|
||||
endif()
|
||||
if ( ${C_COMPILER} MATCHES "GNU")
|
||||
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-missing-declarations -Wno-strict-aliasing")
|
||||
endif()
|
||||
|
||||
set (CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "")
|
||||
|
||||
if (ANDROID)
|
||||
SWIG_ADD_MODULE(YAPDroid java ${SWIG_SOURCES} )
|
||||
|
||||
ADD_LIBRARY( YAPAndroid OBJECT ${swig_generated_file_fullname})
|
||||
else()
|
||||
SWIG_LINK_LIBRARIES (YAPDroid Yap++ )
|
||||
set (LIBDIR ${CMAKE_SOURCE_DIR}/YAPDroid/app/libs/${ANDROID_ABI})
|
||||
|
||||
|
||||
add_custom_command (TARGET YAPDroid
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:YAPDroid> ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:libYap> ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:Yap++> ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:Yapsqlite3> ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:utf8proc> ${LIBDIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${GMP_LIBRARIES} ${LIBDIR}
|
||||
DEPENDS YAPDroid
|
||||
add_custom_command (OUTPUT ${SWIG_CXX}
|
||||
COMMAND ${SWIG} -java -outdir ${CMAKE_CURRENT_BINARY_DIR} -c++ -addextern -I${CMAKE_SOURCE_DIR}/CXX ${SWIG_SOURCES} -o ${SWIG_CXX}
|
||||
${SWIG_SOURCES}
|
||||
)
|
||||
endif()
|
||||
|
||||
# set( LIBDIR ${CMAKE_SOURCE_DIR}/YAPDroid/app/src/main/jniLibs/${ANDROID_ABI})
|
||||
|
||||
# add_custom_command(TARGET YAPDroid
|
||||
# COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_SOURCE_DIR}/YAPDroid/app/src/main/java/pt/up/yap/lib
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SWIG_OUTDIR} ${CMAKE_SOURCE_DIR}/YAPDroid/app/src/main/java/pt/up/yap/lib
|
||||
# COMMAND ${CMAKE_COMMAND} -E make_directory ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:YAPDroid> ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:libYap> ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:Yap++> ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:Yapsqlite3> ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:utf8proc> ${LIBDIR}
|
||||
# COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_SOURCE_DIR}/YAPDroid/app/src/main/java/org/sqlite/database
|
||||
# COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/Android/src/org/sqlite/database
|
||||
# ${CMAKE_SOURCE_DIR}/android/app/src/main/java/org/sqlite/database
|
||||
# POST_BUILD
|
||||
# )
|
||||
|
||||
install(TARGETS YAPDroid
|
||||
LIBRARY DESTINATION ${dlls}
|
||||
ARCHIVE DESTINATION ${dlls}
|
||||
)
|
||||
|
Reference in New Issue
Block a user