1echo "Build type %BUILD%"
2@echo on
3@rem dir /b /s "C:\Program Files (x86)" | findstr /i /e "\vcvars64.bat"
4set "VCVARSPATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build"
5goto %BUILD%
6echo "Error: unknown build type %BUILD%"
7goto eof
8
9:MSVCDYNAMIC64
10call "%VCVARSPATH%\vcvars64.bat"
11call ci/perl.bat MSVC142
12if %errorlevel% neq 0 exit /b %errorlevel%
13set PATH=c:\perl-msvc\bin;%PATH%
14cd win32
15perl Configure --config=release --enable-blumenthal-aes --with-sdk --with-ipv6 --with-winextdll --linktype=dynamic --with-ssl --with-sslincdir=C:\OpenSSL-Win64\include --with-ssllibdir=C:\OpenSSL-Win64\lib\vc
16if %errorlevel% neq 0 exit /b %errorlevel%
17nmake /nologo
18if %errorlevel% neq 0 exit /b %errorlevel%
19nmake /nologo perl
20if %errorlevel% neq 0 exit /b %errorlevel%
21nmake /nologo perl_test
22if %errorlevel% neq 0 exit /b %errorlevel%
23cd ..
24goto eof
25
26:MSVCSTATIC64
27call "%VCVARSPATH%\vcvars64.bat"
28call ci/perl.bat MSVC142
29if %errorlevel% neq 0 exit /b %errorlevel%
30set PATH=c:\perl-msvc\bin;%PATH%
31cd win32
32perl Configure --config=release --enable-blumenthal-aes --with-sdk --with-ipv6 --with-winextdll --linktype=static --with-ssl --with-sslincdir=C:\OpenSSL-Win64\include --with-ssllibdir=C:\OpenSSL-Win64\lib\vc
33if %errorlevel% neq 0 exit /b %errorlevel%
34nmake /nologo
35if %errorlevel% neq 0 exit /b %errorlevel%
36cd ..
37goto eof
38
39:INSTALLER
40call "%VCVARSPATH%\vcvars64.bat"
41call ci/perl.bat MSVC142
42if %errorlevel% neq 0 exit /b %errorlevel%
43set PATH=c:\perl-msvc\bin;%PATH%
44set OPENSSLDIR=C:\OpenSSL-Win64
45set PATH=%PATH%;C:\cygwin64\bin
46perl win32\dist\build-binary.pl
47if %errorlevel% neq 0 goto installer_build_error
48mkdir installer
49copy c:\usr\*.exe installer
50goto eof
51
52:installer_build_error
53set e=%errorlevel%
54type win32\make.out
55exit /b %e%
56goto eof
57
58:MinGW32
59rem MinGW is not present in the Visual Studio 2017 image. See also
60rem https://www.appveyor.com/docs/windows-images-software/.
61if exist C:\mingw goto MinGW32-get
62mkdir C:\mingw
63curl --no-alpn -L "https://osdn.net/dl/mingw/mingw-get-0.6.3-mingw32-pre-20170905-1-bin.zip" -o C:\mingw\mingw-get.zip
64unzip C:\mingw\mingw-get.zip -d C:\mingw
65:MinGW32-get
66C:\mingw\bin\mingw-get install mingw32-binutils-bin mingw32-gcc-bin mingw32-gcc-dev mingw32-w32api-dev msys-autoconf-bin msys-automake-bin msys-bash-bin msys-core-bin msys-coreutils-bin msys-file-bin msys-gawk-bin msys-grep-bin msys-libncurses-dev msys-libopenssl-dev msys-m4-bin msys-make-bin msys-openssl-bin msys-perl-bin msys-sed-bin msys-tar-bin
67set MSYSTEM=MINGW32
68C:\mingw\msys\1.0\bin\bash --login -c 'set -x; cd "${APPVEYOR_BUILD_FOLDER}"; ci/build.sh'
69goto eof
70
71:MSYS2
72set MSYSTEM=MSYS
73C:\msys64\usr\bin\bash --login -c 'set -x; cd "${APPVEYOR_BUILD_FOLDER}"; ci/build.sh'
74goto eof
75
76:MinGW64
77set MSYSTEM=MINGW64
78C:\msys64\usr\bin\bash --login -c 'set -x; cd "${APPVEYOR_BUILD_FOLDER}"; ci/build.sh'
79goto eof
80
81:Cygwin32
82c:\cygwin\setup-x86.exe --quiet-mode --no-shortcuts --only-site --site "%CYG_MIRROR%" --packages openssl-devel > NUL
83c:\cygwin\bin\bash --login -c 'set -x; cd "${APPVEYOR_BUILD_FOLDER}"; ci/build.sh'
84goto eof
85
86:Cygwin64
87c:\cygwin64\setup-x86_64.exe --quiet-mode --no-shortcuts --only-site --site "%CYG_MIRROR%" --packages openssl-devel > NUL
88c:\cygwin64\bin\bash --login -c 'set -x; cd "${APPVEYOR_BUILD_FOLDER}"; ci/build.sh'
89goto eof
90
91:eof
92