-
Notifications
You must be signed in to change notification settings - Fork 12
Add github workflows for automatic builds of Dolphin #59
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
base: master
Are you sure you want to change the base?
Changes from all commits
54fe290
55a01da
2a64b38
d0fa4b5
3706c95
09b4d3a
ee104fc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,104 @@ | ||||||||
| name: Build Linux Dolphin | ||||||||
|
|
||||||||
| on: | ||||||||
| push: | ||||||||
| branches: | ||||||||
| - master | ||||||||
| pull_request: | ||||||||
| branches: | ||||||||
| - master | ||||||||
| workflow_dispatch: | ||||||||
|
|
||||||||
| jobs: | ||||||||
| build: | ||||||||
| runs-on: ubuntu-24.04 | ||||||||
|
|
||||||||
| steps: | ||||||||
| - name: Checkout code | ||||||||
| uses: actions/checkout@v2 | ||||||||
| with: | ||||||||
| submodules: 'recursive' | ||||||||
|
|
||||||||
| - name: Set up Python | ||||||||
| uses: actions/setup-python@v2 | ||||||||
| with: | ||||||||
| python-version: 3.13 | ||||||||
|
|
||||||||
| - name: Install dependencies | ||||||||
| run: | | ||||||||
| sudo apt update && sudo apt upgrade | ||||||||
| sudo apt install libxi-dev | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. These There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. duplicated below
Suggested change
|
||||||||
| sudo apt install libegl1-mesa-dev | ||||||||
| sudo apt install ffmpeg | ||||||||
| sudo apt install libudev-dev | ||||||||
| sudo apt install libevdev-dev | ||||||||
| sudo apt install build-essential | ||||||||
| sudo apt install cmake | ||||||||
| sudo apt install git | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. git is necessarily already installed on GitHub runners
Suggested change
|
||||||||
| sudo apt install qt6-base-dev qt6-tools-dev libqt6svg6-dev | ||||||||
| sudo apt install libavcodec-dev | ||||||||
| sudo apt install libavformat-dev | ||||||||
| sudo apt install libcurl4-openssl-dev | ||||||||
| sudo apt install libdbus-1-dev | ||||||||
| sudo apt install libglew-dev | ||||||||
| sudo apt install libgtk-3-dev | ||||||||
| sudo apt install libopenal-dev | ||||||||
| sudo apt install libreadline-dev | ||||||||
| sudo apt install libxrandr-dev | ||||||||
| sudo apt install libxi-dev | ||||||||
| sudo apt install libxinerama-dev | ||||||||
| sudo apt install libx11-dev | ||||||||
| sudo apt install libasound2-dev | ||||||||
| sudo apt install libpulse-dev | ||||||||
| sudo apt install libfreetype6-dev | ||||||||
| sudo apt install libfontconfig1-dev | ||||||||
| sudo apt install libpng-dev | ||||||||
| sudo apt install libjpeg-dev | ||||||||
| sudo apt install libz-dev | ||||||||
| sudo apt install libxext-dev | ||||||||
| sudo apt install libxrender-dev | ||||||||
| sudo apt install libglu1-mesa-dev | ||||||||
| sudo apt install libgtkglext1-dev | ||||||||
| sudo apt install libgtest-dev | ||||||||
| sudo apt install libgmp-dev | ||||||||
| sudo apt install liblz4-dev | ||||||||
| sudo apt install liblzma-dev | ||||||||
| sudo apt install libsnappy-dev | ||||||||
| sudo apt install libtinyxml2-dev | ||||||||
| sudo apt install libxi-dev | ||||||||
| sudo apt install libxrandr-dev | ||||||||
| sudo apt install libxinerama-dev | ||||||||
|
Comment on lines
+68
to
+70
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Duplicate entries
Suggested change
|
||||||||
| sudo apt install libx11-xcb-dev | ||||||||
| sudo apt install libxcb-glx0-dev | ||||||||
| sudo apt install libxcb1-dev | ||||||||
| sudo apt install libxcb-dri3-dev | ||||||||
| sudo apt install libxcb-dri2-0-dev | ||||||||
| sudo apt install libxcb-xfixes0-dev | ||||||||
| sudo apt install libxcb-randr0-dev | ||||||||
| sudo apt install libxcb-keysyms1-dev | ||||||||
| sudo apt install libxcb-image0-dev | ||||||||
| sudo apt install libxcb-shape0-dev | ||||||||
| sudo apt install libxcb-xinerama0-dev | ||||||||
| sudo apt install libxcb-util-dev | ||||||||
| sudo apt install libxcb-icccm4-dev | ||||||||
| sudo apt install libxcb-keysyms1-dev | ||||||||
| sudo apt install libxcb-xkb-dev | ||||||||
| sudo apt install libxkbcommon-dev | ||||||||
| sudo apt install libxkbcommon-x11-dev | ||||||||
|
|
||||||||
| - name: Build Dolphin | ||||||||
| run: | | ||||||||
| # On Ubuntu some include files are missing for Qt6, we copy those manually | ||||||||
| # Hacky, but it works anyways | ||||||||
| sudo cp -r Externals/Qt/Qt6.5.1/x64/include/QtGui/6.5.1/QtGui/qpa/ /usr/include/ | ||||||||
| cmake -Bbuild . -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DLINUX_LOCAL_DEV=true -DUSE_SYSTEM_LIBS=OFF -DCMAKE_BUILD_TYPE=Release | ||||||||
| cd build | ||||||||
| make -j$(nproc) | ||||||||
| cp -r ../Data/Sys/ Binaries/ | ||||||||
| tar -czf dolphin_linux.tar.gz Binaries/ | ||||||||
|
|
||||||||
| - name: Upload Build | ||||||||
| uses: actions/upload-artifact@v4 | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||
| with: | ||||||||
| name: DolphinLinux | ||||||||
| path: build/dolphin_linux.tar.gz | ||||||||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,59 @@ | ||||||
| name: Build Mac OS Dolphin | ||||||
|
|
||||||
| on: | ||||||
| push: | ||||||
| branches: | ||||||
| - master | ||||||
| pull_request: | ||||||
| branches: | ||||||
| - master | ||||||
| workflow_dispatch: | ||||||
|
|
||||||
| jobs: | ||||||
| build: | ||||||
| name: "${{ matrix.runs-on }} • ${{ matrix.arch }}" | ||||||
| defaults: | ||||||
| run: | ||||||
| shell: bash | ||||||
| strategy: | ||||||
| matrix: | ||||||
| include: | ||||||
| - runs-on: macos-latest | ||||||
| arch: arm64 | ||||||
| runs-on: ${{ matrix.runs-on }} | ||||||
|
|
||||||
| steps: | ||||||
| - name: Checkout code | ||||||
| uses: actions/checkout@v2 | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
| with: | ||||||
| submodules: 'recursive' | ||||||
|
|
||||||
| - name: Install Qt | ||||||
| run: | | ||||||
| brew update | ||||||
| brew install qt | ||||||
|
|
||||||
| - name: Configure Dolphin | ||||||
| run: | | ||||||
| mkdir build | ||||||
| cd build | ||||||
| cmake .. -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DENABLE_AUTOUPDATE=OFF | ||||||
| tar -czf dolphin_mac.tar.gz Binaries/ | ||||||
|
|
||||||
| - name: Try Building Dolphin | ||||||
| run: | | ||||||
| cd build | ||||||
| make -j$(sysctl -n hw.logicalcpu) | ||||||
| continue-on-error: true | ||||||
|
|
||||||
| - name: Try Building Dolphin Again | ||||||
| run: | | ||||||
| cd build | ||||||
| make -j$(sysctl -n hw.logicalcpu) | ||||||
| tar -czf dolphin_mac.tar.gz Binaries/ | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
You can either make this step produce a zip. Or skip the step and point (this comment applies to all workflows) |
||||||
|
|
||||||
| - name: Upload Build | ||||||
| uses: actions/upload-artifact@v4 | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
| with: | ||||||
| name: DolphinMac-${{ matrix.arch }} | ||||||
| path: build/dolphin_mac.tar.gz | ||||||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,32 @@ | ||||||
| name: Build Win Dolphin | ||||||
|
|
||||||
| on: | ||||||
| push: | ||||||
| branches: | ||||||
| - master | ||||||
| pull_request: | ||||||
| branches: | ||||||
| - master | ||||||
| workflow_dispatch: | ||||||
|
|
||||||
| jobs: | ||||||
| build: | ||||||
| runs-on: windows-latest | ||||||
|
|
||||||
| steps: | ||||||
| - name: Checkout code | ||||||
| uses: actions/checkout@v2 | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
| with: | ||||||
| submodules: 'recursive' | ||||||
|
|
||||||
| - name: Build Dolphin | ||||||
| run: | | ||||||
| cmake -Bbuild . -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release | ||||||
| cmake --build build --config Release -- /m | ||||||
| ls | ||||||
|
|
||||||
| - name: Upload Build | ||||||
| uses: actions/upload-artifact@v4 | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
| with: | ||||||
| name: DolphinWin | ||||||
| path: Binary | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.