39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
# To use this as a script, make sure you pass in the variables SRC_DIR BUILD_DIR and TARGET_FILE
 | 
						|
 | 
						|
if(WIN32)
 | 
						|
    set(PLATFORM "windows")
 | 
						|
elseif(APPLE)
 | 
						|
    set(PLATFORM "mac")
 | 
						|
elseif(UNIX)
 | 
						|
    set(PLATFORM "linux")
 | 
						|
else()
 | 
						|
    message(FATAL_ERROR "Cannot build installer for this unsupported platform")
 | 
						|
endif()
 | 
						|
 | 
						|
set(DIST_DIR "${BUILD_DIR}/dist")
 | 
						|
set(ARCHIVE "${PLATFORM}.7z")
 | 
						|
 | 
						|
file(MAKE_DIRECTORY ${BUILD_DIR})
 | 
						|
file(MAKE_DIRECTORY ${DIST_DIR})
 | 
						|
file(DOWNLOAD https://github.com/citra-emu/ext-windows-bin/raw/master/qtifw/${ARCHIVE}
 | 
						|
    "${BUILD_DIR}/${ARCHIVE}" SHOW_PROGRESS)
 | 
						|
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf "${BUILD_DIR}/${ARCHIVE}"
 | 
						|
    WORKING_DIRECTORY "${BUILD_DIR}/")
 | 
						|
 | 
						|
set(TARGET_NAME "citra-setup-${PLATFORM}")
 | 
						|
set(CONFIG_FILE "${SRC_DIR}/config/config_${PLATFORM}.xml")
 | 
						|
set(INSTALLER_BASE "${BUILD_DIR}/installerbase_${PLATFORM}")
 | 
						|
set(BINARY_CREATOR "${BUILD_DIR}/binarycreator_${PLATFORM}")
 | 
						|
set(PACKAGES_DIR "${BUILD_DIR}/packages")
 | 
						|
file(MAKE_DIRECTORY ${PACKAGES_DIR})
 | 
						|
 | 
						|
if (UNIX OR APPLE)
 | 
						|
    execute_process(COMMAND chmod 744 ${BINARY_CREATOR})
 | 
						|
endif()
 | 
						|
 | 
						|
execute_process(COMMAND ${BINARY_CREATOR} -t ${INSTALLER_BASE} -n -c ${CONFIG_FILE} -p ${PACKAGES_DIR} ${TARGET_FILE})
 | 
						|
 | 
						|
if (APPLE)
 | 
						|
    execute_process(COMMAND chmod 744 ${TARGET_FILE}.app/Contents/MacOS/${TARGET_NAME})
 | 
						|
endif()
 |