diff options
author | bunnei <bunneidev@gmail.com> | 2016-03-03 02:32:32 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2016-03-03 02:32:32 +0100 |
commit | 699b2a6571849bddda4fee3eb31f2f7b7e83a882 (patch) | |
tree | 0db944960a7f7a924f34afa1222ad6e9d3421b11 /externals/cmake-modules/WindowsCopyFiles.cmake | |
parent | Merge pull request #1434 from Kloen/legend (diff) | |
parent | Config: Use unique_ptr instead of raw pointer (diff) | |
download | yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar.gz yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar.bz2 yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar.lz yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar.xz yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.tar.zst yuzu-699b2a6571849bddda4fee3eb31f2f7b7e83a882.zip |
Diffstat (limited to 'externals/cmake-modules/WindowsCopyFiles.cmake')
-rw-r--r-- | externals/cmake-modules/WindowsCopyFiles.cmake | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/externals/cmake-modules/WindowsCopyFiles.cmake b/externals/cmake-modules/WindowsCopyFiles.cmake new file mode 100644 index 000000000..cd0c2ce47 --- /dev/null +++ b/externals/cmake-modules/WindowsCopyFiles.cmake @@ -0,0 +1,28 @@ +# Copyright 2016 Citra Emulator Project +# Licensed under GPLv2 or any later version +# Refer to the license.txt file included. + +# This file provides the function windows_copy_files. +# This is only valid on Windows. + +# Include guard +if(__windows_copy_files) + return() +endif() +set(__windows_copy_files YES) + +# Any number of files to copy from SOURCE_DIR to DEST_DIR can be specified after DEST_DIR. +# This copying happens post-build. +function(windows_copy_files TARGET SOURCE_DIR DEST_DIR) + # windows commandline expects the / to be \ so switch them + string(REPLACE "/" "\\\\" SOURCE_DIR ${SOURCE_DIR}) + string(REPLACE "/" "\\\\" DEST_DIR ${DEST_DIR}) + + # /NJH /NJS /NDL /NFL /NC /NS /NP - Silence any output + # cmake adds an extra check for command success which doesn't work too well with robocopy + # so trick it into thinking the command was successful with the || cmd /c "exit /b 0" + add_custom_command(TARGET ${TARGET} POST_BUILD + COMMAND if not exist ${DEST_DIR} mkdir ${DEST_DIR} 2> nul + COMMAND robocopy ${SOURCE_DIR} ${DEST_DIR} ${ARGN} /NJH /NJS /NDL /NFL /NC /NS /NP || cmd /c "exit /b 0" + ) +endfunction()
\ No newline at end of file |