| 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(BUILD_DIR "${CMAKE_BINARY_DIR}/installer") | |
| set(DIST_DIR "${BUILD_DIR}/dist") | |
| set(TARGET_FILE "${DIST_DIR}/citra-setup-${PLATFORM}") | |
| file(MAKE_DIRECTORY "${BUILD_DIR}" "${DIST_DIR}") | |
| # Adds a custom target that will run the BuildInstaller.cmake file | |
| # CMake can't just run a cmake function as a custom command, so this is a way around it. | |
| # Calls the cmake command and runs a cmake file in "scripting" mode passing in variables with -D | |
| add_custom_command(OUTPUT "${TARGET_FILE}" | |
| COMMAND ${CMAKE_COMMAND} | |
| -DBASE_DIR=${CMAKE_SOURCE_DIR} | |
| -DSRC_DIR=${CMAKE_CURRENT_SOURCE_DIR} | |
| -DBUILD_DIR=${BUILD_DIR} | |
| -DTARGET_FILE=${TARGET_FILE} | |
| -P ${CMAKE_SOURCE_DIR}/CMakeModules/BuildInstaller.cmake | |
| WORKING_DIRECTORY ${BUILD_DIR} | |
| ) | |
| add_custom_target(installer DEPENDS ${TARGET_FILE}) | |