devops: produce webkit win64 builds

This commit is contained in:
Andrey Lushnikov 2020-01-16 15:32:50 -08:00
parent 447d76d6cd
commit a446d919fd
6 changed files with 39 additions and 1 deletions

View File

@ -45,6 +45,8 @@ while true; do
iteration=$(( iteration + 1 ))
echo "== ITERATION ${iteration} =="
git pull origin master
../checkout_build_archive_upload.sh webkit || true
git pull origin master
../checkout_build_archive_upload.sh firefox || true
git pull origin master
../checkout_build_archive_upload.sh firefox-win64 || true

View File

@ -39,11 +39,13 @@ WK_ARCHIVES=(
"$HOST/webkit/%s/minibrowser-linux.zip"
"$HOST/webkit/%s/minibrowser-mac-10.14.zip"
"$HOST/webkit/%s/minibrowser-mac-10.15.zip"
"$HOST/webkit/%s/minibrowser-win64.zip"
)
WK_ALIASES=(
"WK-LINUX"
"WK-MAC-10.14"
"WK-MAC-10.15"
"WK-WIN64"
)
COLUMN="%-15s"

View File

@ -71,6 +71,9 @@ elif [[ ("$1" == "webkit") || ("$1" == "webkit/") ]]; then
elif [[ "$(uname)" == "Linux" ]]; then
BLOB_NAME="minibrowser-linux.zip"
ALIAS="webkit-linux r$BUILD_NUMBER"
elif [[ "$(uname)" == MINGW* ]]; then
BLOB_NAME="minibrowser-win64.zip"
ALIAS="webkit-win64 r$BUILD_NUMBER"
else
echo "ERROR: unsupported platform - $(uname)"
exit 1

View File

@ -42,6 +42,8 @@ main() {
createZipForMac
elif [[ "$(uname)" == "Linux" ]]; then
createZipForLinux
elif [[ "$(uname)" == MINGW* ]]; then
createZipForWindows
else
echo "ERROR: cannot upload on this platform!" 1>&2
exit 1;
@ -70,6 +72,27 @@ createZipForLinux() {
rm -rf $tmpdir
}
createZipForWindows() {
# create a TMP directory to copy all necessary files
local tmpdir="/tmp/webkit-deploy-$(date +%s)"
mkdir -p $tmpdir
cp -t $tmpdir ./WebKitLibraries/win/bin64/*.dll
cd WebKitBuild/Release/bin64
cp -r -t $tmpdir WebKit.resources
cp -t $tmpdir JavaScriptCore.dll MiniBrowserLib.dll WTF.dll WebKit.dll WebKit2.dll libEGL.dll libGLESv2.dll
cp -t $tmpdir MiniBrowser.exe WebKitNetworkProcess.exe WebKitWebProcess.exe
cd -
# copy protocol
node ../concat_protocol.js > $tmpdir/protocol.json
# tar resulting directory and cleanup TMP.
cd $tmpdir
zip -r $ZIP_PATH ./
cd -
rm -rf $tmpdir
}
createZipForMac() {
# create a TMP directory to copy all necessary files
local tmpdir=$(mktemp -d)

View File

@ -4,16 +4,19 @@ set +x
trap "cd $(pwd -P)" EXIT
cd "$(dirname $0)"
cd "checkout"
if [[ "$(uname)" == "Darwin" ]]; then
cd "checkout"
./Tools/Scripts/build-webkit --release --touch-events
elif [[ "$(uname)" == "Linux" ]]; then
cd "checkout"
# Check that WebKitBuild exists and is not empty.
if ! [[ (-d ./WebKitBuild) && (-n $(ls -1 ./WebKitBuild/)) ]]; then
yes | DEBIAN_FRONTEND=noninteractive ./Tools/Scripts/update-webkitgtk-libs
fi
./Tools/Scripts/build-webkit --gtk --release --touch-events MiniBrowser
elif [[ "$(uname)" == MINGW* ]]; then
/c/Windows/System32/cmd.exe "/c buildwin.bat"
else
echo "ERROR: cannot upload on this platform!" 1>&2
exit 1;

View File

@ -0,0 +1,5 @@
set PATH=%WEBKIT_BUILD_PATH%
set WEBKIT_LIBRARIES=%~dp0checkout\WebKitLibraries\win
set WEBKIT_OUTPUTDIR=%~dp0checkout\WebKitBuild
perl %~dp0checkout\Tools\Scripts\build-webkit --wincairo --release --no-ninja --touch-events --dark-mode-css --generate-project-only
%DEVENV% %~dp0checkout\WebKitBuild\Release\WebKit.sln /build "Release|x64"