mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-02 04:51:26 +12:00
51 lines
1.9 KiB
CMake
51 lines
1.9 KiB
CMake
# Copy remaining DLLS
|
|
|
|
cmake_path(GET exe PARENT_PATH exe_dir)
|
|
cmake_path(CONVERT "${MSYS2_CLANG_BIN}" TO_CMAKE_PATH_LIST msys2_clang_bin)
|
|
cmake_path(CONVERT "${MSYS2_USR_BIN}" TO_CMAKE_PATH_LIST msys2_usr_bin)
|
|
|
|
message(STATUS "Getting runtime dependencies for '${exe}' in '${exe_dir}'")
|
|
message(STATUS "Dependency dirs: '${msys2_clang_bin}', '${msys2_usr_bin}'")
|
|
|
|
file(GET_RUNTIME_DEPENDENCIES EXECUTABLES ${exe}
|
|
RESOLVED_DEPENDENCIES_VAR resolved_deps
|
|
UNRESOLVED_DEPENDENCIES_VAR unresolved_deps
|
|
DIRECTORIES ${msys2_clang_bin} ${msys2_usr_bin})
|
|
|
|
foreach(dep IN LISTS resolved_deps)
|
|
cmake_path(GET dep FILENAME dep_filename)
|
|
cmake_path(GET dep PARENT_PATH dep_dir_raw)
|
|
cmake_path(CONVERT "${dep_dir_raw}" TO_CMAKE_PATH_LIST dep_dir)
|
|
|
|
string(COMPARE EQUAL "${dep_dir}" "${msys2_clang_bin}" is_clang_path)
|
|
string(COMPARE EQUAL "${dep_dir}" "${msys2_usr_bin}" is_usr_path)
|
|
|
|
set(same_path FALSE)
|
|
if(is_clang_path OR is_usr_path)
|
|
set(same_path TRUE)
|
|
endif()
|
|
|
|
if(same_path)
|
|
set(dest "${exe_dir}/${dep_filename}")
|
|
if(NOT EXISTS "${dest}")
|
|
file(COPY "${dep}" DESTINATION "${exe_dir}")
|
|
message(STATUS "Copied '${dep_filename}' to '${exe_dir}'")
|
|
else()
|
|
message(STATUS "Already exists: '${dest}', skipping.")
|
|
endif()
|
|
else()
|
|
message(STATUS "Found and ignored '${dep}' in '${dep_dir}'. Is clang path: ${is_clang_path}, is usr path: ${is_usr_path}")
|
|
endif()
|
|
endforeach()
|
|
|
|
# Warn about unresolved dependencies
|
|
if(unresolved_deps)
|
|
message(WARNING "Unresolved dependencies:")
|
|
foreach(dep IN LISTS unresolved_deps)
|
|
cmake_path(GET dep PARENT_PATH dep_dir)
|
|
string(TOLOWER "${dep_dir}" dep_dir_lower)
|
|
if(NOT dep_dir_lower MATCHES ".*(windows[/\\]system32|windows[/\\]winsxs|program files).*")
|
|
message(STATUS " - ${dep_dir}/${dep}")
|
|
endif()
|
|
endforeach()
|
|
endif()
|