mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +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…
	
	Add table
		Add a link
		
	
		Reference in a new issue