OSDN Git Service

DiffWrapper.cpp: Remove unnecessary #include
[winmerge-jp/winmerge-jp.git] / DownloadDeps.cmd
1 @echo off
2 setlocal
3 set path="%ProgramFiles%\7-zip";"%ProgramFiles(x86)%\7-zip";%path%
4 7z > NUL
5 if not %ERRORLEVEL% == 0 (
6   echo 7-Zip is not installed
7   goto :eof
8 )
9 @echo on
10
11 set downloadsdir=%~dp0\build\WinMergeDownloadDeps
12 set urls_destdirs=^
13 https://github.com/WinMerge/winmerge/releases/download/winmerge_manual_another_build_tools_v2/winmerge_manual_another_build_tools_v2.zip!Docs\Manual\Tools ^
14 https://github.com/WinMerge/winmerge/releases/download/ShellExtension-1.18.7.0/ShellExtension-1.18.7.0.zip!Build ^
15 https://github.com/WinMerge/winmerge/releases/download/Merge7z2301.0/Merge7z2301.0-x86.zip!Build\x86\Release ^
16 https://github.com/WinMerge/winmerge/releases/download/Merge7z2301.0/Merge7z2301.0-x64.zip!Build\X64\Release ^
17 https://github.com/WinMerge/winmerge/releases/download/Merge7z2301.0/Merge7z2301.0-ARM.zip!Build\ARM64\Release ^
18 https://github.com/WinMerge/winmerge/releases/download/Merge7z2301.0/Merge7z2301.0-ARM64.zip!Build\ARM64\Release ^
19 https://github.com/WinMerge/frhed/releases/download/0.10904.2017/frhed-0.10904.2017.12-x86.zip!Build\x86\Release ^
20 https://github.com/WinMerge/frhed/releases/download/0.10904.2017/frhed-0.10904.2017.12-x64.zip!Build\x64\Release ^
21 https://github.com/WinMerge/frhed/releases/download/0.10904.2017/frhed-0.10904.2017.12-ARM.zip!Build\ARM\Release ^
22 https://github.com/WinMerge/frhed/releases/download/0.10904.2017/frhed-0.10904.2017.12-ARM64.zip!Build\ARM64\Release ^
23 https://github.com/WinMerge/winimerge/releases/download/v1.0.41/winimerge-1.0.41.0-x86.zip!Build\x86\Release ^
24 https://github.com/WinMerge/winimerge/releases/download/v1.0.41/winimerge-1.0.41.0-x64.zip!Build\x64\Release ^
25 https://github.com/WinMerge/winimerge/releases/download/v1.0.41/winimerge-1.0.41.0-ARM.zip!Build\ARM\Release ^
26 https://github.com/WinMerge/winimerge/releases/download/v1.0.41/winimerge-1.0.41.0-ARM64.zip!Build\ARM64\Release ^
27 https://github.com/WinMerge/winwebdiff/releases/download/v1.0.7/winwebdiff-1.0.7.0-x86.zip!Build\x86\Release ^
28 https://github.com/WinMerge/winwebdiff/releases/download/v1.0.7/winwebdiff-1.0.7.0-x64.zip!Build\x64\Release ^
29 https://github.com/WinMerge/winwebdiff/releases/download/v1.0.7/winwebdiff-1.0.7.0-ARM64.zip!Build\ARM64\Release ^
30 https://github.com/htacg/tidy-html5/releases/download/5.4.0/tidy-5.4.0-w32-mt-XP.zip!Build\tidy-html5 ^
31 https://github.com/htacg/tidy-html5/archive/refs/tags/5.4.0.zip!Build\tidy-html5 ^
32 https://github.com/jqlang/jq/releases/download/jq-1.7/jq-win32.exe!Build\jq ^
33 https://github.com/jqlang/jq/archive/refs/tags/jq-1.7.zip!Build\jq ^
34 https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-v1.5.2-win64.zip!Build\zstd ^
35 https://mirror.msys2.org/mingw/mingw32/mingw-w64-i686-md4c-0.4.8-2-any.pkg.tar.zst!Build\md4c ^
36 https://mirror.msys2.org/msys/i686/gcc-libs-10.2.0-1-i686.pkg.tar.zst!Build\msys2_tmp ^
37 https://mirror.msys2.org/msys/i686/msys2-runtime-3.2.0-14-i686.pkg.tar.zst!Build\msys2_tmp ^
38 https://mirror.msys2.org/msys/i686/patch-2.7.6-1-i686.pkg.tar.xz!Build\msys2_tmp ^
39 http://www.magicnotes.com/steelbytes/SBAppLocale_ENG.zip!Docs\Manual\Tools
40
41 pushd "%~dp0"
42 mkdir %downloadsdir% 2> NUL
43
44 for %%p in (%urls_destdirs%) do (
45   for /F "tokens=1,2 delims=!" %%u in ("%%p") do (
46     if not exist %downloadsdir%\%%~nxu (
47       powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest %%u -Outfile %downloadsdir%\%%~nxu"
48     )
49     if "%%~xu" == ".zip" (
50       7z x %downloadsdir%\%%~nxu -aoa -o%%v
51     ) else (
52       if "%%~xu" == ".xz" (
53         7z x %downloadsdir%\%%~nxu -so | 7z x -aoa -si -ttar -o%%v
54       ) else (
55         mkdir %%v > NUL
56         if "%%~xu" == ".zst" (
57           Build\zstd\zstd-v1.5.2-win64\zstd.exe -dc %downloadsdir%\%%~nxu | tar xf - -C %%v
58         ) else (
59           copy %downloadsdir%\%%~nxu %%v
60         )
61       )
62     )
63   )
64 )
65
66 for /d %%i in (build\tidy-html5\tidy-5.4.0-w32-mt-XP\*) do move %%i build\tidy-html5\
67
68 echo Copy msys2 files
69 mkdir Build\msys2\usr\bin 2> NUL
70 mkdir Build\msys2\usr\share 2> NUL
71 copy Build\msys2_tmp\usr\bin\patch.exe Build\msys2\usr\bin\
72 copy Build\msys2_tmp\usr\bin\msys-2.0.dll Build\msys2\usr\bin\
73 copy Build\msys2_tmp\usr\bin\msys-gcc_s-1.dll Build\msys2\usr\bin\
74 xcopy /s /y Build\msys2_tmp\usr\share\*.* Build\msys2\usr\share\
75 rmdir /q /s Build\msys2_tmp\ > NUL 2> NUL
76
77 for %%i in (x86 x64 ARM ARM64) do (
78   for %%j in (Release Debug Test) do (
79     echo **** %%i %%j ****
80     mkdir Build\%%i\%%j\Merge7z 2> NUL
81     mkdir Build\%%i\%%j\WinIMerge 2> NUL
82     mkdir Build\%%i\%%j\WinWebDiff 2> NUL
83     mkdir Build\%%i\%%j\Frhed 2> NUL
84     mkdir Build\%%i\%%j\Filters 2> NUL
85     mkdir Build\%%i\%%j\ColorSchemes 2> NUL
86     mkdir Build\%%i\%%j\MergePlugins 2> NUL
87     mkdir Build\%%i\%%j\Commands\jq 2> NUL
88     mkdir Build\%%i\%%j\Commands\tidy-html5 2> NUL
89     mkdir Build\%%i\%%j\Commands\msys2\usr\bin 2> NUL
90     mkdir Build\%%i\%%j\Commands\md4c 2> NUL
91     if not "Build\%%i\Release" == "Build\%%i\%%j" (
92       echo ** Merge7z
93       xcopy /s/y Build\%%i\Release\Merge7z Build\%%i\%%j\Merge7z\
94       echo ** Frhed
95       xcopy /s/y Build\%%i\Release\Frhed Build\%%i\%%j\Frhed\
96       echo ** WinIMerge
97       copy Build\%%i\Release\WinIMerge\WinIMergeLib.dll Build\%%i\%%j\WinIMerge\
98       copy Build\%%i\Release\WinWebDiff\WinWebDiffLib.dll Build\%%i\%%j\WinWebDiff\ 2> NUL
99     )
100     echo ** jq
101     copy Build\jq\jq-win32.exe Build\%%i\%%j\Commands\jq\jq.exe
102     copy Build\jq\jq-jq-1.6\COPYING Build\%%i\%%j\Commands\jq\
103     echo ** tidy-html5
104     copy Build\tidy-html5\bin\tidy.* Build\%%i\%%j\Commands\tidy-html5\
105     copy Build\tidy-html5\tidy-html5-5.4.0\README\LICENSE.md Build\%%i\%%j\Commands\tidy-html5\
106     echo ** md4c
107     copy Build\md4c\mingw32\bin\*.exe Build\%%i\%%j\Commands\md4c\
108     copy Build\md4c\mingw32\bin\*.dll Build\%%i\%%j\Commands\md4c\
109     copy Build\md4c\mingw32\share\licenses\md4c\LICENSE.md Build\%%i\%%j\Commands\md4c\
110     echo ** msys2
111     copy Build\msys2\usr\bin\patch.exe Build\%%i\%%j\Commands\msys2\usr\bin\
112     copy Build\msys2\usr\bin\msys-2.0.dll Build\%%i\%%j\Commands\msys2\usr\bin\
113     copy Build\msys2\usr\bin\msys-gcc_s-1.dll Build\%%i\%%j\Commands\msys2\usr\bin\
114     echo ** Commands
115     xcopy /s/y Plugins\Commands Build\%%i\%%j\Commands
116     echo ** Filters
117     xcopy /s/y Filters Build\%%i\%%j\Filters\
118     echo ** ColorSchemes
119     xcopy /s/y ColorSchemes Build\%%i\%%j\ColorSchemes\
120     echo ** Plugins
121     xcopy /s/y Plugins\dlls\*.sct Build\%%i\%%j\MergePlugins\
122     xcopy /s/y Plugins\Plugins.xml Build\%%i\%%j\MergePlugins\
123     copy Plugins\dlls\%%i\*.dll Build\%%i\%%j\MergePlugins\
124     echo ** ShellExtension
125     xcopy /s/y Build\ShellExtension\WinMergeContextMenuPackage.msix Build\%%i\%%j
126   )
127 )
128
129 popd