mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
Introduce CMake support for building for Android
This is the first step to be able to build Subsurface with CMake for Android. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
c3f6fcb0bf
commit
d880040d0a
2 changed files with 22 additions and 3 deletions
|
@ -155,8 +155,12 @@ if(SUBSURFACE_MOBILE)
|
||||||
set(QT_QUICK_PKG Quick)
|
set(QT_QUICK_PKG Quick)
|
||||||
set(QT_QUICK_LIB Qt5::Quick)
|
set(QT_QUICK_LIB Qt5::Quick)
|
||||||
endif()
|
endif()
|
||||||
find_package(Qt5 REQUIRED COMPONENTS Core Concurrent Widgets Network ${WEBKIT_PKG} ${PRINTING_PKG} Svg Test LinguistTools ${QT_QUICK_PKG})
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network ${WEBKIT_LIB} ${PRINTING_LIB} Qt5::Svg ${QT_QUICK_PKG})
|
set(ANDROID_PKG AndroidExtras)
|
||||||
|
set(ANDROID_LIB Qt5::AndroidExtras)
|
||||||
|
endif()
|
||||||
|
find_package(Qt5 REQUIRED COMPONENTS Core Concurrent Widgets Network ${WEBKIT_PKG} ${PRINTING_PKG} Svg Test LinguistTools ${QT_QUICK_PKG} ${ANDROID_PKG})
|
||||||
|
set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network ${WEBKIT_LIB} ${PRINTING_LIB} Qt5::Svg ${QT_QUICK_PKG} ${ANDROID_LIB})
|
||||||
set(QT_TEST_LIBRARIES ${QT_LIBRARIES} Qt5::Test)
|
set(QT_TEST_LIBRARIES ${QT_LIBRARIES} Qt5::Test)
|
||||||
|
|
||||||
# Generate the ssrf-config.h every 'make'
|
# Generate the ssrf-config.h every 'make'
|
||||||
|
@ -223,6 +227,12 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||||
# in some builds we appear to be missing libz for some strange reason...
|
# in some builds we appear to be missing libz for some strange reason...
|
||||||
set(SUBSURFACE_LINK_LIBRARIES ${SUBSURFACE_LINK_LIBRARIES} -lz)
|
set(SUBSURFACE_LINK_LIBRARIES ${SUBSURFACE_LINK_LIBRARIES} -lz)
|
||||||
endif()
|
endif()
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
set(PLATFORM_SRC android.cpp)
|
||||||
|
# FIXME: Shouldn't cmake/Qt add this automatically somehow?
|
||||||
|
add_definitions(-DQ_OS_ANDROID)
|
||||||
|
set(SUBSURFACE_TARGET subsurface)
|
||||||
|
endif()
|
||||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||||
set(FBSUPPORT 1)
|
set(FBSUPPORT 1)
|
||||||
set(SUBSURFACE_TARGET Subsurface)
|
set(SUBSURFACE_TARGET Subsurface)
|
||||||
|
@ -451,7 +461,13 @@ if(SUBSURFACE_MOBILE)
|
||||||
subsurface_corelib
|
subsurface_corelib
|
||||||
${SUBSURFACE_LINK_LIBRARIES})
|
${SUBSURFACE_LINK_LIBRARIES})
|
||||||
else()
|
else()
|
||||||
add_executable(${SUBSURFACE_TARGET} MACOSX_BUNDLE WIN32 ${SUBSURFACE_PKG} ${SUBSURFACE_APP} ${SUBSURFACE_RESOURCES})
|
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||||
|
# FIXME: is this the right way to link somehting which
|
||||||
|
# androiddeployqt can work with?
|
||||||
|
add_library(${SUBSURFACE_TARGET} SHARED ${SUBSURFACE_PKG} ${SUBSURFACE_APP} ${SUBSURFACE_RESOURCES})
|
||||||
|
else()
|
||||||
|
add_executable(${SUBSURFACE_TARGET} MACOSX_BUNDLE WIN32 ${SUBSURFACE_PKG} ${SUBSURFACE_APP} ${SUBSURFACE_RESOURCES})
|
||||||
|
endif()
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
${SUBSURFACE_TARGET}
|
${SUBSURFACE_TARGET}
|
||||||
subsurface_generated_ui
|
subsurface_generated_ui
|
||||||
|
|
|
@ -26,6 +26,9 @@ bool subsurface_ignore_font(const char *font)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void subsurface_user_info(struct user_info *user)
|
||||||
|
{ /* Encourage use of at least libgit2-0.20 */ }
|
||||||
|
|
||||||
const char *system_default_filename(void)
|
const char *system_default_filename(void)
|
||||||
{
|
{
|
||||||
/* Replace this when QtCore/QStandardPaths getExternalStorageDirectory landed */
|
/* Replace this when QtCore/QStandardPaths getExternalStorageDirectory landed */
|
||||||
|
|
Loading…
Reference in a new issue