Skip to content

Commit f9ed5a7

Browse files
committed
Merge remote-tracking branch 'mixxxdj/2.7' into 2.7-rel-update
Adjusted .github/workflows/build.yml for release build
2 parents 4ddb048 + 0ef543a commit f9ed5a7

File tree

1,343 files changed

+12703
-6728
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,343 files changed

+12703
-6728
lines changed

.github/deploy.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ TMP_PATH="../../.tmp/${UPLOAD_ID}"
1919

2020
echo "Deploying to ${TMP_PATH}, then to ${DEST_PATH}."
2121

22+
mkdir -p $HOME/.ssh
23+
2224
eval "$(ssh-agent -s)" >/dev/null
2325

2426
cleanup() {

.github/pull_request_template.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,28 @@
66
77
- [ ] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
88
- [ ] SHA512s are updated for each updated download.
9-
- [ ] The "supports" clause reflects platforms that may be fixed by this new version.
10-
- [ ] Any fixed [CI baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt) entries are removed from that file.
11-
- [ ] Any patches that are no longer applied are deleted from the port's directory.
9+
- [ ] The "supports" clause reflects platforms that may be fixed by this new version, or no changes were necessary.
10+
- [ ] Any fixed [CI baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt) and [CI feature baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.feature.baseline.txt) entries are removed from that file, or no entries needed to be changed.
11+
- [ ] All patch files in the port are applied and succeed.
1212
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result.
13-
- [ ] Only one version is added to each modified port's versions file.
13+
- [ ] Exactly one version is added in each modified versions file.
1414
1515
END OF PORT UPDATE CHECKLIST (delete this line) -->
1616

1717
<!-- If this PR adds a new port, please uncomment and fill out this checklist:
1818
1919
- [ ] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
20-
- [ ] The name of the port matches an existing name for this component on https://repology.org/ if possible, and/or is strongly associated with that component on search engines.
21-
- [ ] Optional dependencies are resolved in exactly one way. For example, if the component is built with CMake, all `find_package` calls are REQUIRED, are satisfied by `vcpkg.json`'s declared dependencies, or disabled with [CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html).
20+
- [ ] The packaged project shows strong association with the chosen port name. Check this box if at least one of the following criteria is met:
21+
- [ ] The project is in Repology: https://repology.org/<PORT NAME>/versions
22+
- [ ] The project is amongst the first web search results for "<PORT NAME>" or "<PORT NAME> C++". Include a screenshot of the search engine results in the PR.
23+
- [ ] The port name follows the 'GitHubOrg-GitHubRepo' form or equivalent `Owner-Project` form.
24+
- [ ] Optional dependencies of the build are all controlled by the port. A dependency is controlled if it is declared an unconditional dependency in `vcpkg.json`, or explicitly disabled through patches or build system arguments such as [CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html) or [VCPKG_LOCK_FIND_PACKAGE](https://learn.microsoft.com/vcpkg/users/buildsystems/cmake-integration#vcpkg_lock_find_package_pkg)
2225
- [ ] The versioning scheme in `vcpkg.json` matches what upstream says.
2326
- [ ] The license declaration in `vcpkg.json` matches what upstream says.
2427
- [ ] The installed as the "copyright" file matches what upstream says.
2528
- [ ] The source code of the component installed comes from an authoritative source.
26-
- [ ] The generated "usage text" is accurate. See [adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md) for context.
29+
- [ ] The generated "usage text" is brief and accurate. See [adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md) for context. Don't add a usage file if the automatically generated usage is correct.
2730
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result.
28-
- [ ] Only one version is in the new port's versions file.
29-
- [ ] Only one version is added to each modified port's versions file.
31+
- [ ] Exactly one version is added in each modified versions file.
3032
3133
END OF NEW PORT CHECKLIST (delete this line) -->

.github/workflows/build.yml

Lines changed: 54 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,13 @@ jobs:
5959
developer_dir: /Applications/Xcode_16.4.app/Contents/Developer
6060
brew_extra: libtool
6161
check_disk_space: df -h
62+
- os: ubuntu-24.04
63+
deps_name: x64-linux-rel
64+
vcpkg_path: /home/runner/mixxx-vcpkg
65+
vcpkg_bootstrap: ./bootstrap-vcpkg.sh
66+
vcpkg_triplet: x64-linux-release
67+
vcpkg_host_triplet: x64-linux-release
68+
check_disk_space: df -h
6269
- os: ubuntu-24.04
6370
deps_name: arm64-android-rel
6471
vcpkg_path: /home/runner/mixxx-vcpkg
@@ -82,11 +89,49 @@ jobs:
8289
uses: actions/checkout@v4
8390
with:
8491
path: mixxx-vcpkg
92+
93+
# The ephemeral space doesn't seem consistent between runs. Sometimes it is available directly on the root (/), sometime on the mount folder (/mnt)
94+
# If the ephemeral storage is available under a seperate drive, we bind-mount as thee `vcpkg_path`
95+
- name: Move checkout and use the ephemeral storage if available
96+
if: runner.os == 'Linux'
97+
run: |
98+
set -x
99+
if [ -d /mnt ]; then
100+
mntSpace=$(df --output=avail /mnt | tail -n 1)
101+
rootSpace=$(df --output=avail / | tail -n 1)
102+
if [ $mntSpace -gt $rootSpace ]; then
103+
mkdir ${{ matrix.vcpkg_path }}
104+
sudo mount -o bind /mnt ${{ matrix.vcpkg_path }}
105+
sudo chown -R `id -u`:`id -g` ${{ matrix.vcpkg_path }}
106+
rsync -a ${{ github.workspace }}/mixxx-vcpkg/ ${{ matrix.vcpkg_path }}
107+
exit 0
108+
fi
109+
fi
110+
# In case we cannot use the ephemeral disk space because it either doesn't
111+
# exist or is too small, we free as much as possible on the root.
112+
sudo rm -rf /home/packer # Free up 677M
113+
sudo rm -rf /opt/az # Free up 649M
114+
sudo rm -rf /opt/google # Free up 378M
115+
sudo rm -rf /opt/hostedtoolcache/CodeQL # Free up 1.6G
116+
sudo rm -rf /opt/hostedtoolcache/go # Free up 808M
117+
sudo rm -rf /opt/hostedtoolcache/node # Free up 532M
118+
sudo rm -rf /opt/hostedtoolcache/PyPy # Free up 520M
119+
sudo rm -rf /opt/hostedtoolcache/Python # Free up 1.5G
120+
sudo rm -rf /opt/microsoft # Free up 781M
121+
sudo rm -rf /opt/pipx # Free up 499M
122+
sudo rm -rf /usr/lib/google-cloud-sdk # Free up 957M
123+
sudo rm -rf /usr/local/julia1.11.7 # Free up 996M
124+
sudo rm -rf /usr/local/share/powershell # Free up 1.3G
125+
sudo rm -rf /usr/share/dotnet # Free up 3.4G
126+
sudo rm -rf /usr/share/swift # Free up 3.2G
127+
sudo rm -rf /usr/local/share/vcpkg # Size unknown, but obvious duplicate
128+
rsync -a ${{ github.workspace }}/mixxx-vcpkg/ ${{ matrix.vcpkg_path }}
85129
86130
# Workaround for issues https://github.com/microsoft/vcpkg/issues/8272
87131
# and https://github.com/actions/checkout/issues/197
88132
# to keep the build path short and work around size limits on the windows runner D: drive
89133
- name: Move checkout
134+
if: runner.os != 'Linux'
90135
run: cmake -E copy_directory ${{ github.workspace }}/mixxx-vcpkg ${{ matrix.vcpkg_path }}
91136

92137
- name: "Work around actions/runner-images#9966"
@@ -121,14 +166,19 @@ jobs:
121166
mono-complete \
122167
libasound2-dev \
123168
libegl1-mesa-dev \
169+
libgl1-mesa-dev \
170+
libdrm-dev \
171+
libgbm-dev \
124172
libghc-resolv-dev \
125173
libglu1-mesa-dev \
126174
libltdl-dev \
175+
libsm-dev \
127176
libudev-dev \
128177
libx11-xcb-dev \
129178
libxi-dev \
130179
libxkbcommon-dev \
131180
libxkbcommon-x11-dev \
181+
libxrandr-dev \
132182
libxrender-dev \
133183
linux-libc-dev \
134184
nasm \
@@ -179,28 +229,9 @@ jobs:
179229
echo "ANDROID_NDK_HOME=/usr/lib/android-sdk/ndk/${{ matrix.android_ndk }}" >> "${GITHUB_ENV}"
180230
sudo sdkmanager --list_installed
181231
182-
# Remove unused pre-installed software as the runner runs out of space otherwise
183-
# Currently freeing up about 17.7G, ~20%
184-
- name: "[android] Free up disk space"
185-
if: startsWith(matrix.deps_name, 'arm64-android')
186-
run: |
187-
sudo apt-get autoremove -y && sudo apt-get clean
188-
sudo rm -rf /home/packer # Free up 677M
189-
sudo rm -rf /opt/az # Free up 649M
190-
sudo rm -rf /opt/google # Free up 378M
191-
sudo rm -rf /opt/hostedtoolcache/CodeQL # Free up 1.6G
192-
sudo rm -rf /opt/hostedtoolcache/go # Free up 808M
193-
sudo rm -rf /opt/hostedtoolcache/node # Free up 532M
194-
sudo rm -rf /opt/hostedtoolcache/PyPy # Free up 520M
195-
sudo rm -rf /opt/hostedtoolcache/Python # Free up 1.5G
196-
sudo rm -rf /opt/microsoft # Free up 781M
197-
sudo rm -rf /opt/pipx # Free up 499M
198-
sudo rm -rf /usr/lib/google-cloud-sdk # Free up 957M
199-
sudo rm -rf /usr/local/julia1.11.7 # Free up 996M
200-
sudo rm -rf /usr/local/share/powershell # Free up 1.3G
201-
sudo rm -rf /usr/share/dotnet # Free up 3.4G
202-
sudo rm -rf /usr/share/swift # Free up 3.2G
203-
sudo rm -rf /usr/local/share/vcpkg # Size unknown, but obvious duplicate
232+
- name: "[ubuntu/android] Free up APT cachd"
233+
if: runner.os == 'Linux'
234+
run: sudo apt-get autoremove -y && sudo apt-get clean
204235

205236
- name: Check available disk space
206237
run: ${{ matrix.check_disk_space }}
@@ -303,6 +334,7 @@ jobs:
303334
# Use retry loop to work around intermittent transfer issue
304335
uses: nick-fields/retry@9417ab499314dfe692edb043ded2ff9b3f5f0a68 # v3
305336
with:
337+
shell: bash
306338
max_attempts: 10
307339
timeout_minutes: 20
308340
retry_wait_seconds: 5

0 commit comments

Comments
 (0)