Modularized Qt and SDL file copying
Now cmake relies on two submodules to copy the libraries in the proper folders
This commit is contained in:
		@@ -1,12 +1,10 @@
 | 
			
		||||
function(copy_msvc_libraries)
 | 
			
		||||
function(copy_citra_Qt5_deps target_dir)
 | 
			
		||||
    include(WindowsCopyFiles)
 | 
			
		||||
    set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/")
 | 
			
		||||
    windows_copy_files(citra-qt ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll)
 | 
			
		||||
 | 
			
		||||
    set(Qt5_DLL_DIR "${Qt5_DIR}/../../../bin")
 | 
			
		||||
    set(Qt5_PLATFORMS_DIR "${Qt5_DIR}/../../../plugins/platforms/")
 | 
			
		||||
    set(PLATFORMS ${DLL_DEST}platforms/)
 | 
			
		||||
    windows_copy_files(citra-qt ${Qt5_DLL_DIR} ${DLL_DEST}
 | 
			
		||||
    windows_copy_files(${target_dir} ${Qt5_DLL_DIR} ${DLL_DEST}
 | 
			
		||||
        icudt*.dll
 | 
			
		||||
        icuin*.dll
 | 
			
		||||
        icuuc*.dll
 | 
			
		||||
@@ -16,4 +14,4 @@ function(copy_msvc_libraries)
 | 
			
		||||
        Qt5Widgets$<$<CONFIG:Debug>:d>.*
 | 
			
		||||
    )
 | 
			
		||||
    windows_copy_files(citra-qt ${Qt5_PLATFORMS_DIR} ${PLATFORMS} qwindows$<$<CONFIG:Debug>:d>.*)
 | 
			
		||||
endfunction(copy_msvc_libraries)
 | 
			
		||||
endfunction(copy_citra_Qt5_deps)
 | 
			
		||||
							
								
								
									
										5
									
								
								CMakeModules/CopyCitraSDLDeps.cmake
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								CMakeModules/CopyCitraSDLDeps.cmake
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
function(copy_citra_SDL_deps target_dir)
 | 
			
		||||
    include(WindowsCopyFiles)
 | 
			
		||||
    set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/")
 | 
			
		||||
    windows_copy_files(${target_dir} ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll)
 | 
			
		||||
endfunction(copy_citra_SDL_deps)
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
 | 
			
		||||
 | 
			
		||||
set(SRCS
 | 
			
		||||
            emu_window/emu_window_sdl2.cpp
 | 
			
		||||
            citra.cpp
 | 
			
		||||
@@ -28,11 +30,6 @@ if(UNIX AND NOT APPLE)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (MSVC)
 | 
			
		||||
    include(WindowsCopyFiles)
 | 
			
		||||
 | 
			
		||||
    set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/")
 | 
			
		||||
 | 
			
		||||
    windows_copy_files(citra ${SDL2_DLL_DIR} ${DLL_DEST} SDL2.dll)
 | 
			
		||||
 | 
			
		||||
    unset(DLL_DEST)
 | 
			
		||||
    include(CopyCitraSDLDeps)
 | 
			
		||||
    copy_citra_SDL_deps(citra)
 | 
			
		||||
endif()
 | 
			
		||||
 
 | 
			
		||||
@@ -108,7 +108,9 @@ if(UNIX AND NOT APPLE)
 | 
			
		||||
    install(TARGETS citra-qt RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
include(CopyMSVCLibsQt)
 | 
			
		||||
if (MSVC)
 | 
			
		||||
    copy_msvc_libraries()
 | 
			
		||||
    include(CopyCitraQt5Deps)
 | 
			
		||||
    include(CopyCitraSDLDeps)
 | 
			
		||||
    copy_citra_Qt5_deps(citra-qt)
 | 
			
		||||
    copy_citra_SDL_deps(citra-qt)
 | 
			
		||||
endif()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user