Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reenable GitHub Actions builds #7

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 20 additions & 24 deletions .github/workflows/build_cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,11 @@ name: CMake Build Matrix
on:
push:
branches:
- qtwebkit-dev-wip
- wk2
- qtwebkit-5.212
- master

pull_request:
branches:
- qtwebkit-dev-wip
- qtwebkit-5.212
- master

env:
QT_VERSION: 5.15.1
Expand Down Expand Up @@ -45,7 +42,7 @@ jobs:
}
- {
name: "Windows MSVC Conan Release", artifact: "Windows-MSVC",
os: windows-latest,
os: windows-2019,
build_type: Release,
environment_script: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat"
}
Expand All @@ -71,17 +68,24 @@ jobs:
git -c protocol.version=2 fetch --no-tags --prune --progress --depth=10 origin +${GITHUB_SHA}:refs/remotes/origin/${BRANCH}
git checkout --progress --force -B $BRANCH refs/remotes/origin/$BRANCH

# For Conan
- name: Python Setup
uses: actions/setup-python@v4
with:
python-version: '3.11'
if: runner.os == 'Windows' || runner.os == 'macOS'

- name: Download Qt Windows
id: qt_win
if: runner.os == 'Windows'
env:
TOOLCHAIN: "win64_msvc2019_64"
DIR: "msvc2019_64"
shell: bash --noprofile --norc -eo pipefail -x {0}
shell: bash --noprofile --norc -eo pipefail -x {0}
run: |
py -m pip install -r Tools/qt/qt-downloader-requirements.txt
pip install -r Tools/qt/qt-downloader-requirements.txt
QT_INSTALL_DIR="/c/Qt"
py Tools/qt/qt-downloader windows desktop ${QT_VERSION} ${TOOLCHAIN} --output=${QT_INSTALL_DIR} --qt_modules="${QT_MODULES}"
python Tools/qt/qt-downloader windows desktop ${QT_VERSION} ${TOOLCHAIN} --output=${QT_INSTALL_DIR} --qt_modules="${QT_MODULES}"
export QTDIR="${QT_INSTALL_DIR}/${QT_VERSION}/${DIR}"
ls $QTDIR
Tools/qt/license_writer.sh
Expand All @@ -92,7 +96,7 @@ jobs:
id: qt_mac
if: runner.os == 'macOS'
shell: bash --noprofile --norc -eo pipefail -x {0}
env:
env:
TOOLCHAIN: "clang_64"
run: |
pip3 install -r Tools/qt/qt-downloader-requirements.txt
Expand Down Expand Up @@ -125,24 +129,19 @@ jobs:
key: ${{ matrix.config.name }}-ccache-${{ env.CACHE_PARTITION }}-${{ steps.ccache_cache_timestamp.outputs.timestamp }}
restore-keys: |
${{ matrix.config.name }}-ccache-${{ env.CACHE_PARTITION }}-
# For Conan
- uses: actions/setup-python@v1
if: runner.os == 'Windows' || runner.os == 'macOS'
with:
python-version: '3.7'

- name: Install dependencies (Conan)
if: runner.os == 'Windows' || runner.os == 'macOS'
shell: bash --noprofile --norc -eo pipefail -x {0}
run: |
pip3 install conan
pip3 install conan==1.60.1

- name: Install dependencies (Ubuntu)
if: runner.os == 'Linux'
run: |
sudo apt-get update && sudo apt-get install \
ninja-build build-essential bison flex gperf libfontconfig1-dev libgl1-mesa-dev libglib2.0-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libhyphen-dev libicu-dev libjpeg-dev libpng-dev libqt5opengl5-dev libqt5sensors5-dev libqt5webchannel5-dev libsqlite3-dev libwebp-dev libwoff-dev libxcomposite-dev libxml2-dev libxrender-dev libxslt1-dev mesa-common-dev pkg-config python3 qtbase5-private-dev qtdeclarative5-private-dev qtpositioning5-dev ruby libqt5sql5-sqlite qtbase5-doc-html qttools5-dev-tools \
libtasn1-6-dev libgcrypt20-dev
libtasn1-6-dev libgcrypt20-dev libunwind-dev libharfbuzz-dev

- name: CMake version
id: cmake_version
Expand All @@ -153,13 +152,10 @@ jobs:
- name: CMake environment
shell: bash --noprofile --norc -eo pipefail -x {0}
run: |
echo "::add-path::$GITHUB_WORKSPACE"
echo "::set-env name=CCACHE_BASEDIR::$GITHUB_WORKSPACE"
echo "::set-env name=CCACHE_DIR::$GITHUB_WORKSPACE/.ccache"
echo "::set-env name=cmake_args::\
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DENABLE_PCH=OFF"
echo "$GITHUB_WORKSPACE" >> $GITHUB_PATH
echo "CCACHE_BASEDIR=$GITHUB_WORKSPACE" >> $GITHUB_ENV
echo "CCACHE_DIR=$GITHUB_WORKSPACE/.ccache" >> $GITHUB_ENV
echo "cmake_args='-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DENABLE_PCH=OFF'" >> $GITHUB_ENV

- name: Configure (Linux)
if: runner.os == 'Linux'
Expand Down
3 changes: 3 additions & 0 deletions Source/WTF/wtf/glib/GRefPtr.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,11 @@ extern "C" {
GDBusNodeInfo* g_dbus_node_info_ref(GDBusNodeInfo*);
void g_dbus_node_info_unref(GDBusNodeInfo*);
};

#if !PLATFORM(QT)
Copy link

@annulen annulen Jul 2, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change certainly belongs to a separate commit

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely. My plan is to try to get the builds working and then extract out the work separately. I only have CI to reproduce this so need to rewrite history anyway.

extern "C" void g_object_unref(gpointer);
extern "C" gpointer g_object_ref_sink(gpointer);
#endif

namespace WTF {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
#include "config.h"
#include "PlatformDisplay.h"

#if USE(GSTREAMER_GL)

#include "GLContext.h"
#include "GStreamerCommon.h"
#define GST_USE_UNSTABLE_API
Expand All @@ -35,8 +37,6 @@ GST_DEBUG_CATEGORY_EXTERN(webkit_media_player_debug);

namespace WebCore {

#if USE(GSTREAMER_GL)

GstGLDisplay* PlatformDisplay::gstGLDisplay() const
{
#if USE(EGL)
Expand Down Expand Up @@ -74,6 +74,6 @@ GstGLContext* PlatformDisplay::gstGLContext() const
return m_gstGLContext.get();
}

#endif // USE(GSTREAMER_GL)

} // namespace WebCore

#endif // USE(GSTREAMER_GL)
2 changes: 1 addition & 1 deletion Source/cmake/WebKitCommon.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
WPE
WinCairo
)
set(PORT "NOPORT" CACHE STRING "choose which WebKit port to build (one of ${ALL_PORTS})")
set(PORT "Qt" CACHE STRING "choose which WebKit port to build (one of ${ALL_PORTS})")

list(FIND ALL_PORTS ${PORT} RET)
if (${RET} EQUAL -1)
Expand Down
6 changes: 3 additions & 3 deletions Tools/qt/build-qtwebkit-conan.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,9 +135,9 @@ def create_profile(compiler, arch):

print("Path of build directory:" + build_directory)

run_command("conan remote add -f bincrafters https://api.bintray.com/conan/bincrafters/public-conan")
run_command("conan remote add -f qtproject https://api.bintray.com/conan/qtproject/conan")
run_command("conan remote add -f qtproject-testing https://api.bintray.com/conan/qtproject/conan-testing")
run_command("conan config set general.revisions_enabled=1")
run_command("conan remote add -f bincrafters https://bincrafters.jfrog.io/artifactory/api/conan/public-conan")
run_command("conan remote add -f coin https://qtpkgtest.jfrog.io/artifactory/api/conan/coin-ci-provisioning")

if args.profile and args.compiler:
sys.exit("Error: --compiler and --profile cannot be specified at the same time")
Expand Down