Copy Qt5 plugin DLLs on Windows
This is a follow up CL to ba512015f796144746eb557504f192b169188075.
Like Qt5Core.dll/Qt5Gui.dll/Qt5Widgets.dll, qwindows.dll also needs to
copied to the target directory.
BUG=#327
TEST=
REF_BUG=26887740
REF_CL=136927840
REF_TIME=2016-10-22T11:33:45-07:00
REF_TIME_RAW=1477161225 -0700
Yohei Yukawa
7 years ago
778 | 778 | abs_out_win_dir = GetBuildBaseName(target_platform) |
779 | 779 | copy_script = os.path.join( |
780 | 780 | ABS_SCRIPT_DIR, 'build_tools', 'copy_dll_and_symbol.py') |
781 | copy_params = [] | |
781 | 782 | if qt_version == '4': |
782 | copy_modes = [ | |
783 | {'configuration': 'DebugDynamic', 'basenames': 'QtCored4;QtGuid4'}, | |
784 | {'configuration': 'ReleaseDynamic', 'basenames': 'QtCore4;QtGui4'}] | |
783 | copy_params.append({ | |
784 | 'basenames': 'QtCored4;QtGuid4', | |
785 | 'dll_paths': abs_qt_bin_dir, | |
786 | 'pdb_paths': abs_qt_lib_dir, | |
787 | 'target_dir': os.path.join(abs_out_win_dir, 'DebugDynamic')}) | |
788 | copy_params.append({ | |
789 | 'basenames': 'QtCore4;QtGui4', | |
790 | 'dll_paths': abs_qt_bin_dir, | |
791 | 'pdb_paths': abs_qt_lib_dir, | |
792 | 'target_dir': os.path.join(abs_out_win_dir, 'ReleaseDynamic')}) | |
785 | 793 | elif qt_version == '5': |
786 | copy_modes = [ | |
787 | {'configuration': 'DebugDynamic', | |
788 | 'basenames': 'Qt5Cored;Qt5Guid;Qt5Widgetsd'}, | |
789 | {'configuration': 'ReleaseDynamic', | |
790 | 'basenames': 'Qt5Core;Qt5Gui;Qt5Widgets'}] | |
791 | else: | |
792 | copy_modes = [] | |
793 | for mode in copy_modes: | |
794 | copy_params.append({ | |
795 | 'basenames': 'Qt5Cored;Qt5Guid;Qt5Widgetsd', | |
796 | 'dll_paths': abs_qt_bin_dir, | |
797 | 'pdb_paths': abs_qt_lib_dir, | |
798 | 'target_dir': os.path.join(abs_out_win_dir, 'DebugDynamic')}) | |
799 | copy_params.append({ | |
800 | 'basenames': 'Qt5Core;Qt5Gui;Qt5Widgets', | |
801 | 'dll_paths': abs_qt_bin_dir, | |
802 | 'pdb_paths': abs_qt_lib_dir, | |
803 | 'target_dir': os.path.join(abs_out_win_dir, 'ReleaseDynamic')}) | |
804 | copy_params.append({ | |
805 | 'basenames': 'qwindowsd', | |
806 | 'dll_paths': os.path.join(abs_qtdir, 'plugins', 'platforms'), | |
807 | 'pdb_paths': os.path.join(abs_qtdir, 'plugins', 'platforms'), | |
808 | 'target_dir': os.path.join(abs_out_win_dir, 'DebugDynamic', | |
809 | 'platforms')}) | |
810 | copy_params.append({ | |
811 | 'basenames': 'qwindows', | |
812 | 'dll_paths': os.path.join(abs_qtdir, 'plugins', 'platforms'), | |
813 | 'pdb_paths': os.path.join(abs_qtdir, 'plugins', 'platforms'), | |
814 | 'target_dir': os.path.join(abs_out_win_dir, 'ReleaseDynamic', | |
815 | 'platforms')}) | |
816 | for copy_param in copy_params: | |
794 | 817 | copy_commands = [ |
795 | 818 | copy_script, |
796 | '--basenames', mode['basenames'], | |
797 | '--dll_paths', abs_qt_bin_dir, | |
798 | '--pdb_paths', os.pathsep.join([abs_qt_bin_dir, abs_qt_lib_dir]), | |
799 | '--target_dir', os.path.join(abs_out_win_dir, mode['configuration']), | |
819 | '--basenames', copy_param['basenames'], | |
820 | '--dll_paths', copy_param['dll_paths'], | |
821 | '--pdb_paths', copy_param['pdb_paths'], | |
822 | '--target_dir', copy_param['target_dir'], | |
800 | 823 | ] |
801 | 824 | RunOrDie(copy_commands) |
802 | 825 |