From 1cb2d950b126750df3a4004af0ec70bbf02bba48 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 16:37:54 +0000 Subject: [PATCH 01/43] Add initial support for Linux --- scripts/install-vcpkg-deps | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/install-vcpkg-deps b/scripts/install-vcpkg-deps index f2041d3..d8946ed 100755 --- a/scripts/install-vcpkg-deps +++ b/scripts/install-vcpkg-deps @@ -12,11 +12,13 @@ ROOT = Path(__file__).resolve().parent.parent TRIPLET_OSS = { 'Darwin': 'osx', + 'Linux': 'linux', } TRIPLET_ARCHS = { 'x86_64': 'x64', 'arm64': 'arm64', + 'aarch64': 'arm64', } # Packages to be built for the target architecture @@ -67,6 +69,9 @@ PLATFORM_PACKAGES = { 'hss1394', 'qtkeychain-qt6', # libgcrypt seems to be unsupported on iOS ], + 'linux': [ + 'qtkeychain-qt6', + ], } # Packages to be built for the host architecture when crosscompiling From 59223667a715d21a38eb10d98fa3226b1b640920 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 16:51:26 +0000 Subject: [PATCH 02/43] Add experimental Linux workflow --- .github/workflows/build.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4c072fe..d7caadb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -38,6 +38,14 @@ jobs: package_extension: dmg cmake_args: >- -DMACOS_BUNDLE=ON + - name: Linux (x86_64) + os: ubuntu-latest + triplet: x64-linux + host_triplet: x64-linux + overlay_ports: vcpkg/overlay/ports + cpack_generator: TGZ + package_extension: tar.gz + cmake_args: '' name: '${{ matrix.name }}' runs-on: '${{ matrix.os }}' From cec0fbd77dfce7286708c0fa97272bc5dec2b81b Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 17:11:37 +0000 Subject: [PATCH 03/43] Install APT dependencies --- .github/workflows/build.yml | 3 +++ scripts/install-apt-deps | 12 ++++++++++++ 2 files changed, 15 insertions(+) create mode 100755 scripts/install-apt-deps diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d7caadb..7d4e48c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -70,6 +70,9 @@ jobs: done echo "mixxx_version=$(scripts/mixxx-version)" >> "$GITHUB_ENV" shell: bash + - name: Set up Linux build environment + if: runner.os == 'Linux' + run: ${{ env.SCRIPTS_ROOT }}/install-apt-deps - name: Set up macOS build environment if: runner.os == 'macOS' run: | diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps new file mode 100755 index 0000000..f7e5afc --- /dev/null +++ b/scripts/install-apt-deps @@ -0,0 +1,12 @@ +#!/bin/bash + +set -e + +echo "==> Installing system dependencies with APT..." +sudo apt-get update +sudo apt-get install -y \ + autotools-dev \ + ccache \ + cmake \ + nasm \ + ninja From 19435935bf463eacdad23362e73dfce2a5aedba9 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 17:16:48 +0000 Subject: [PATCH 04/43] Fix package name --- scripts/install-apt-deps | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index f7e5afc..545d82b 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -9,4 +9,4 @@ sudo apt-get install -y \ ccache \ cmake \ nasm \ - ninja + ninja-build From 951e00a18f2a7c9d1d0e27d70afc41198234acbb Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 18:34:44 +0000 Subject: [PATCH 05/43] Install `autoconf-archive` on Linux --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 545d82b..a8876a4 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -5,6 +5,7 @@ set -e echo "==> Installing system dependencies with APT..." sudo apt-get update sudo apt-get install -y \ + autoconf-archive \ autotools-dev \ ccache \ cmake \ From 976f110e2fc28b96c0bfcd11f99a5f20aeda3c2b Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 19:57:25 +0000 Subject: [PATCH 06/43] Add missing dependencies for Qt build on Linux See https://github.com/microsoft/vcpkg/issues/30329 --- scripts/install-apt-deps | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index a8876a4..611d104 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -10,4 +10,11 @@ sudo apt-get install -y \ ccache \ cmake \ nasm \ - ninja-build + ninja-build \ + '^libxcb.*-dev' \ + libx11-xcb-dev \ + libglu1-mesa-dev \ + libxrender-dev \ + libxi-dev \ + libxkbcommon-dev \ + libxkbcommon-x11-dev From 4504eace197011d48122cd25da300342f551f4f2 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 20:35:48 +0000 Subject: [PATCH 07/43] Add `mesa-common-dev` --- scripts/install-apt-deps | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 611d104..56e3e98 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -9,12 +9,13 @@ sudo apt-get install -y \ autotools-dev \ ccache \ cmake \ - nasm \ - ninja-build \ '^libxcb.*-dev' \ libx11-xcb-dev \ libglu1-mesa-dev \ libxrender-dev \ libxi-dev \ libxkbcommon-dev \ - libxkbcommon-x11-dev + libxkbcommon-x11-dev \ + mesa-common-dev \ + nasm \ + ninja-build From 47d2a5c6d61fb33b04a21e506f884747610b45a8 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 21:36:37 +0000 Subject: [PATCH 08/43] Try another package --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 56e3e98..8fe150f 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -11,6 +11,7 @@ sudo apt-get install -y \ cmake \ '^libxcb.*-dev' \ libx11-xcb-dev \ + libgl1-mesa-dev \ libglu1-mesa-dev \ libxrender-dev \ libxi-dev \ From e3f8ba1b636d915a9f575a6c96a61b04e1a132c4 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 22:24:26 +0000 Subject: [PATCH 09/43] Add release-mode triplet for x64-linux Building debug symbols causes CI to fail due to a lack of space. Unfortunately, this workaround is still needed: https://github.com/microsoft/vcpkg/issues/10683 --- .github/workflows/build.yml | 2 +- overlay/triplets/x64-linux.cmake | 7 +++++++ vars/vcpkg.sh | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 overlay/triplets/x64-linux.cmake diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7d4e48c..5197b5e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -54,7 +54,7 @@ jobs: ARTIFACT_BASE_NAME: 'mixxx-${{ matrix.triplet }}' VCPKG_DEFAULT_TRIPLET: '${{ matrix.triplet }}' VCPKG_DEFAULT_HOST_TRIPLET: '${{ matrix.host_triplet }}' - VCPKG_OVERLAY_TRIPLETS: vcpkg/overlay/triplets + VCPKG_OVERLAY_TRIPLETS: overlay/triplets:vcpkg/overlay/triplets VCPKG_OVERLAY_PORTS: '${{ matrix.overlay_ports }}' steps: diff --git a/overlay/triplets/x64-linux.cmake b/overlay/triplets/x64-linux.cmake new file mode 100644 index 0000000..8a25c72 --- /dev/null +++ b/overlay/triplets/x64-linux.cmake @@ -0,0 +1,7 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) + +set(VCPKG_BUILD_TYPE release) diff --git a/vars/vcpkg.sh b/vars/vcpkg.sh index b6a2446..29bd905 100644 --- a/vars/vcpkg.sh +++ b/vars/vcpkg.sh @@ -4,5 +4,5 @@ if [ -z "$VCPKG_ROOT" ]; then export VCPKG_ROOT="$rootdir/vcpkg" fi -export VCPKG_OVERLAY_TRIPLETS="$VCPKG_ROOT/overlay/triplets" +export VCPKG_OVERLAY_TRIPLETS="$rootdir/overlay/triplets:$VCPKG_ROOT/overlay/triplets" export VCPKG_OVERLAY_PORTS="$VCPKG_ROOT/overlay/osx:$VCPKG_ROOT/overlay/ports" From f1e3d813a0e032f1d1517e7326f5bd6719b74010 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Thu, 9 Nov 2023 23:27:09 +0000 Subject: [PATCH 10/43] Revert "Add release-mode triplet for x64-linux" This reverts commit 3499ce53dbb8b245c201d9fe43f12923eee883eb. No longer needed as of https://github.com/mixxxdj/vcpkg/pull/95 --- .github/workflows/build.yml | 2 +- overlay/triplets/x64-linux.cmake | 7 ------- vars/vcpkg.sh | 2 +- 3 files changed, 2 insertions(+), 9 deletions(-) delete mode 100644 overlay/triplets/x64-linux.cmake diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5197b5e..7d4e48c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -54,7 +54,7 @@ jobs: ARTIFACT_BASE_NAME: 'mixxx-${{ matrix.triplet }}' VCPKG_DEFAULT_TRIPLET: '${{ matrix.triplet }}' VCPKG_DEFAULT_HOST_TRIPLET: '${{ matrix.host_triplet }}' - VCPKG_OVERLAY_TRIPLETS: overlay/triplets:vcpkg/overlay/triplets + VCPKG_OVERLAY_TRIPLETS: vcpkg/overlay/triplets VCPKG_OVERLAY_PORTS: '${{ matrix.overlay_ports }}' steps: diff --git a/overlay/triplets/x64-linux.cmake b/overlay/triplets/x64-linux.cmake deleted file mode 100644 index 8a25c72..0000000 --- a/overlay/triplets/x64-linux.cmake +++ /dev/null @@ -1,7 +0,0 @@ -set(VCPKG_TARGET_ARCHITECTURE x64) -set(VCPKG_CRT_LINKAGE dynamic) -set(VCPKG_LIBRARY_LINKAGE static) - -set(VCPKG_CMAKE_SYSTEM_NAME Linux) - -set(VCPKG_BUILD_TYPE release) diff --git a/vars/vcpkg.sh b/vars/vcpkg.sh index 29bd905..b6a2446 100644 --- a/vars/vcpkg.sh +++ b/vars/vcpkg.sh @@ -4,5 +4,5 @@ if [ -z "$VCPKG_ROOT" ]; then export VCPKG_ROOT="$rootdir/vcpkg" fi -export VCPKG_OVERLAY_TRIPLETS="$rootdir/overlay/triplets:$VCPKG_ROOT/overlay/triplets" +export VCPKG_OVERLAY_TRIPLETS="$VCPKG_ROOT/overlay/triplets" export VCPKG_OVERLAY_PORTS="$VCPKG_ROOT/overlay/osx:$VCPKG_ROOT/overlay/ports" From 4a3821a01523b05e88ab96f5e37f8a4733b2ea94 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Fri, 10 Nov 2023 00:12:01 +0000 Subject: [PATCH 11/43] Add missing `libudev-dev` dependency --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 8fe150f..84acf29 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -13,6 +13,7 @@ sudo apt-get install -y \ libx11-xcb-dev \ libgl1-mesa-dev \ libglu1-mesa-dev \ + libudev-dev \ libxrender-dev \ libxi-dev \ libxkbcommon-dev \ From 06eef3394ebb50cdb3c1ff98774f5f125af26205 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Fri, 10 Nov 2023 12:53:21 +0000 Subject: [PATCH 12/43] Add `libupower-glib-dev` dependency --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 84acf29..2004ac7 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -14,6 +14,7 @@ sudo apt-get install -y \ libgl1-mesa-dev \ libglu1-mesa-dev \ libudev-dev \ + libupower-glib-dev \ libxrender-dev \ libxi-dev \ libxkbcommon-dev \ From cb26a8119271907b9655203a457433085f1f38c7 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Fri, 10 Nov 2023 15:16:13 +0000 Subject: [PATCH 13/43] Use patched Mixxx with XCB plugin --- .gitmodules | 4 ++-- mixxx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index b84622e..ca4a0c8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,5 +4,5 @@ branch = 2.5-rel [submodule "mixxx"] path = mixxx - url = https://github.com/mixxxdj/mixxx.git - branch = main + url = https://github.com/fwcd/mixxx.git + branch = static-qt-xcb-plugin diff --git a/mixxx b/mixxx index 30bca40..4b9128e 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 30bca40dad857a651a6635f9102a5ed3528da015 +Subproject commit 4b9128efef4d0c3595230572f6732448d9ff4a32 From f30a20973c03e9c3c66a2e0264330a07616da6b9 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Fri, 10 Nov 2023 18:01:51 +0000 Subject: [PATCH 14/43] Base mixxx branch on `main` again --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 4b9128e..6b943eb 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 4b9128efef4d0c3595230572f6732448d9ff4a32 +Subproject commit 6b943eb7732ee6362e08383c1f631dd3f95e120a From 29f62659d4e05beec6a166d75136e2d1210d234d Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Fri, 10 Nov 2023 19:41:36 +0000 Subject: [PATCH 15/43] Add missing `libtool` dependency --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 2004ac7..9fd2d58 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -15,6 +15,7 @@ sudo apt-get install -y \ libglu1-mesa-dev \ libudev-dev \ libupower-glib-dev \ + libtool \ libxrender-dev \ libxi-dev \ libxkbcommon-dev \ From a0c8ebe50b7437c61e71f9b7e304bd21c61b2984 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sat, 11 Nov 2023 17:25:05 +0000 Subject: [PATCH 16/43] Try linking a bunch of libraries manually --- .github/workflows/build.yml | 3 ++- scripts/install-apt-deps | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7d4e48c..e184f4f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -45,7 +45,8 @@ jobs: overlay_ports: vcpkg/overlay/ports cpack_generator: TGZ package_extension: tar.gz - cmake_args: '' + cmake_args: >- + -DCMAKE_CXX_FLAGS='-lasound -ludev -fopenmp -lsleef' name: '${{ matrix.name }}' runs-on: '${{ matrix.os }}' diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 9fd2d58..1e9d35a 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -13,6 +13,7 @@ sudo apt-get install -y \ libx11-xcb-dev \ libgl1-mesa-dev \ libglu1-mesa-dev \ + libsleef-dev \ libudev-dev \ libupower-glib-dev \ libtool \ From a5845c2a2d04c9ba5b002e2f7d512d48ae8e9495 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sat, 11 Nov 2023 17:26:21 +0000 Subject: [PATCH 17/43] Add `libasound2-dev` to APT dependencies --- scripts/install-apt-deps | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install-apt-deps b/scripts/install-apt-deps index 1e9d35a..e605009 100755 --- a/scripts/install-apt-deps +++ b/scripts/install-apt-deps @@ -9,6 +9,7 @@ sudo apt-get install -y \ autotools-dev \ ccache \ cmake \ + libasound2-dev \ '^libxcb.*-dev' \ libx11-xcb-dev \ libgl1-mesa-dev \ From 5c1185654a0b4ec8c7287db4f6572ed8256617d6 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sat, 11 Nov 2023 18:57:11 +0000 Subject: [PATCH 18/43] Remove extra flags again --- .github/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e184f4f..7d4e48c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -45,8 +45,7 @@ jobs: overlay_ports: vcpkg/overlay/ports cpack_generator: TGZ package_extension: tar.gz - cmake_args: >- - -DCMAKE_CXX_FLAGS='-lasound -ludev -fopenmp -lsleef' + cmake_args: '' name: '${{ matrix.name }}' runs-on: '${{ matrix.os }}' From 6ff8fa8d22b1693cdd2b443c5ff66e589110e9b5 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 14:18:02 +0000 Subject: [PATCH 19/43] Use `linux-static` integration branch (for now) --- .gitmodules | 2 +- mixxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index ca4a0c8..8b5ecc6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,4 +5,4 @@ [submodule "mixxx"] path = mixxx url = https://github.com/fwcd/mixxx.git - branch = static-qt-xcb-plugin + branch = linux-static diff --git a/mixxx b/mixxx index 6b943eb..942ca6c 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 6b943eb7732ee6362e08383c1f631dd3f95e120a +Subproject commit 942ca6cc2f2e0744e0d16b0c029c5d0177b8766a From 66d49aa156874c73c51246a5a9bd427f6e88c06f Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 15:14:06 +0000 Subject: [PATCH 20/43] Update mixxx (link PortMidi with ALSA) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 942ca6c..d0d97c3 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 942ca6cc2f2e0744e0d16b0c029c5d0177b8766a +Subproject commit d0d97c303902d8ef7de74ae7d891a5a77c7989e0 From aa3f01c4868c58c0badb4c1ba980ff783b951a2e Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 15:22:20 +0000 Subject: [PATCH 21/43] Update mixxx (with the right PortMidi target) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index d0d97c3..f9fd3a5 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit d0d97c303902d8ef7de74ae7d891a5a77c7989e0 +Subproject commit f9fd3a5b64f702338f8722b8eb6ea81b7d5c4e51 From e779f48b44170960e0ab690732178696e2b63900 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 15:38:02 +0000 Subject: [PATCH 22/43] Update mixxx (add proper PortMidi targets) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index f9fd3a5..4b588e1 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit f9fd3a5b64f702338f8722b8eb6ea81b7d5c4e51 +Subproject commit 4b588e163ade26a65620dabc11119113820cac6b From f12eaba352bd1670482d20557223ffc18f103026 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 15:41:40 +0000 Subject: [PATCH 23/43] Update mixxx (fix typo) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 4b588e1..48fb92c 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 4b588e163ade26a65620dabc11119113820cac6b +Subproject commit 48fb92c899843f4fc4d0cb72436273cccf1a9b70 From b7c7c5526387acf491976cd8be0877427f117d87 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 16:08:11 +0000 Subject: [PATCH 24/43] Update mixxx (link udev) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 48fb92c..a7275cc 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 48fb92c899843f4fc4d0cb72436273cccf1a9b70 +Subproject commit a7275cc1d2b6afeb812f8959637dce0281813ee6 From e252090a2b12bfec518fdabbabb82609d5e69192 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 16:20:52 +0000 Subject: [PATCH 25/43] Update mixxx (link hidraw with udev too) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index a7275cc..a746fc7 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit a7275cc1d2b6afeb812f8959637dce0281813ee6 +Subproject commit a746fc766b0d7e61fdefe45c5858c371ef4d0122 From 12f803b7929a652ca60d597bafa9d47125108deb Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 16:54:29 +0000 Subject: [PATCH 26/43] Update mixxx (sleef openmp) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index a746fc7..3154a15 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit a746fc766b0d7e61fdefe45c5858c371ef4d0122 +Subproject commit 3154a15bee9c97f6b2d3e5d95b8923e94670a62e From e029027899768ae9adb8b0de1f973657761345a9 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 20:14:22 +0000 Subject: [PATCH 27/43] Update mixxx (link OpenMP target) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 3154a15..d0352e1 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 3154a15bee9c97f6b2d3e5d95b8923e94670a62e +Subproject commit d0352e172a6c549e5c3d4f72bd86bb450cce653c From 7bd97ef0b677ec390f456d4c72a127f8e338427e Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 20:32:18 +0000 Subject: [PATCH 28/43] Update mixxx (Add proper FindUdev) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index d0352e1..f7cb7dc 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit d0352e172a6c549e5c3d4f72bd86bb450cce653c +Subproject commit f7cb7dc4d1245a98282a5fbb78ac28e46baff893 From a917700b8d7ecb78ee95381232fe73e187a68270 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 20:57:49 +0000 Subject: [PATCH 29/43] Update mixxx (fix missing udev vars) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index f7cb7dc..43e8820 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit f7cb7dc4d1245a98282a5fbb78ac28e46baff893 +Subproject commit 43e882069a77de0710704e9dc07f739ebec8d215 From 35f47784910e44322dfa1ac98a8024977a678e1a Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 21:04:03 +0000 Subject: [PATCH 30/43] Update mixxx (reorder vorbis found) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 43e8820..aa950bb 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 43e882069a77de0710704e9dc07f739ebec8d215 +Subproject commit aa950bb686a2be652c7d10992eabd29762664bcb From 609c4ecec5dc91bbac0fb8d61809729b605385d7 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 21:29:33 +0000 Subject: [PATCH 31/43] Update mixxx (rename to libudev and find include path) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index aa950bb..352f977 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit aa950bb686a2be652c7d10992eabd29762664bcb +Subproject commit 352f9774bc7a6c247bb653a9dc17d8cb9bee5ef8 From 8ba41406222ab80d52662903e80e13885de04bcf Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 21:46:11 +0000 Subject: [PATCH 32/43] Update mixxx (use sleefdft) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 352f977..062c265 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 352f9774bc7a6c247bb653a9dc17d8cb9bee5ef8 +Subproject commit 062c265d5be16e4a113c2e37f8fd01b9ab273368 From 7a95e4cc17b7fb7e0b6cda42073346f8a4d93108 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 21:47:56 +0000 Subject: [PATCH 33/43] Update mixxx (fix typo) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 062c265..fb4bf95 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 062c265d5be16e4a113c2e37f8fd01b9ab273368 +Subproject commit fb4bf953141e5407c7401f338772d57f0acf8f3d From c8c90d20f3712feb2b78c943d4905ecba75d4435 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 21:53:00 +0000 Subject: [PATCH 34/43] Always save ccache for faster builds --- .github/workflows/build.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7d4e48c..8014871 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -157,6 +157,13 @@ jobs: - name: Build Mixxx run: cmake --build build --target mixxx working-directory: mixxx + - name: Save build cache + if: always() + uses: actions/cache/save@v3 + with: + # TODO: Share the key and the path with the setup step + path: $HOME/Library/Caches/ccache + key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} - name: Package Mixxx run: cpack -G ${{ matrix.cpack_generator }} -V && mv *.${{ matrix.package_extension }} "mixxx-${{ matrix.triplet }}-${{ env.mixxx_version }}.${{ matrix.package_extension }}" working-directory: mixxx/build From 873272b9a566e8128a367eda3f3916ae09fa5290 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 22:41:00 +0000 Subject: [PATCH 35/43] Update mixxx (try linking openmp the modern way) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index fb4bf95..30d722e 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit fb4bf953141e5407c7401f338772d57f0acf8f3d +Subproject commit 30d722e8f1bfbf744d8d4ee1792ef2f512c46b25 From 081b499fd83ab99625aafe1f262205b36f356ce6 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 22:46:35 +0000 Subject: [PATCH 36/43] Use `${{ env.HOME }}` instead of `$HOME` Shell substitutions such as `$HOME` do not seem to work here --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8014871..96b5ad3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -132,7 +132,7 @@ jobs: - name: Set up build cache uses: actions/cache@v3 with: - path: $HOME/Library/Caches/ccache + path: ${{ env.HOME }}/Library/Caches/ccache key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} restore-keys: | ccache-${{ env.mixxx_commit }}-${{ github.ref }}- @@ -162,7 +162,7 @@ jobs: uses: actions/cache/save@v3 with: # TODO: Share the key and the path with the setup step - path: $HOME/Library/Caches/ccache + path: ${{ env.HOME }}/Library/Caches/ccache key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} - name: Package Mixxx run: cpack -G ${{ matrix.cpack_generator }} -V && mv *.${{ matrix.package_extension }} "mixxx-${{ matrix.triplet }}-${{ env.mixxx_version }}.${{ matrix.package_extension }}" From fc42623ecb42f551ddda3755addb0483e62b804f Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 22:53:11 +0000 Subject: [PATCH 37/43] Update mixxx (use openmp flags) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 30d722e..785a350 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 30d722e8f1bfbf744d8d4ee1792ef2f512c46b25 +Subproject commit 785a3504165c034f4140b65f2e6ac3f5278a8ba5 From 7c8a94a811f9a541e3685e9567cb29b591d3c8ce Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 23:24:22 +0000 Subject: [PATCH 38/43] Specify ccache path in matrix This fixes the missing path on Linux --- .github/workflows/build.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 96b5ad3..823aa96 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,6 +25,7 @@ jobs: triplet: arm64-osx-min1100 host_triplet: x64-osx-min1015 overlay_ports: vcpkg/overlay/osx:vcpkg/overlay/ports + ccache_path: ~/Library/Caches/ccache cpack_generator: DragNDrop package_extension: dmg cmake_args: >- @@ -34,6 +35,7 @@ jobs: triplet: x64-osx-min1015 host_triplet: x64-osx-min1015 overlay_ports: vcpkg/overlay/osx:vcpkg/overlay/ports + ccache_path: ~/Library/Caches/ccache cpack_generator: DragNDrop package_extension: dmg cmake_args: >- @@ -43,6 +45,7 @@ jobs: triplet: x64-linux host_triplet: x64-linux overlay_ports: vcpkg/overlay/ports + ccache_path: ~/.ccache cpack_generator: TGZ package_extension: tar.gz cmake_args: '' @@ -132,7 +135,7 @@ jobs: - name: Set up build cache uses: actions/cache@v3 with: - path: ${{ env.HOME }}/Library/Caches/ccache + path: ${{ matrix.ccache_path }} key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} restore-keys: | ccache-${{ env.mixxx_commit }}-${{ github.ref }}- @@ -161,8 +164,8 @@ jobs: if: always() uses: actions/cache/save@v3 with: - # TODO: Share the key and the path with the setup step - path: ${{ env.HOME }}/Library/Caches/ccache + # TODO: Share the key with the setup step + path: ${{ matrix.ccache_path }} key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} - name: Package Mixxx run: cpack -G ${{ matrix.cpack_generator }} -V && mv *.${{ matrix.package_extension }} "mixxx-${{ matrix.triplet }}-${{ env.mixxx_version }}.${{ matrix.package_extension }}" From e5ee00cd3b01e4eb3129f17e5add2dd8fc13ddb0 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Sun, 12 Nov 2023 23:34:39 +0000 Subject: [PATCH 39/43] Update mixxx (use proper sleefdft target) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 785a350..85cff39 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 785a3504165c034f4140b65f2e6ac3f5278a8ba5 +Subproject commit 85cff39d1b5718eb32c23512d29ee51bdb7e0ae6 From 74c4b833024df49648002632a78df26652f6e05f Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Mon, 13 Nov 2023 00:18:19 +0000 Subject: [PATCH 40/43] Update mixxx (link openmp again) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index 85cff39..cef0165 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit 85cff39d1b5718eb32c23512d29ee51bdb7e0ae6 +Subproject commit cef0165a50386e915b66727ee73e86d711509235 From 5fcbea193917513fff5492cdb89b1265397ba090 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Mon, 13 Nov 2023 01:17:41 +0000 Subject: [PATCH 41/43] Update mixxx (link sleef into sleefdft) --- mixxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mixxx b/mixxx index cef0165..f4b605b 160000 --- a/mixxx +++ b/mixxx @@ -1 +1 @@ -Subproject commit cef0165a50386e915b66727ee73e86d711509235 +Subproject commit f4b605be45f6f9c3e7772f2c05c180b420efcb35 From 72fd6723bc22990649f8e8202a786ad0e0b24950 Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Mon, 13 Nov 2023 01:53:08 +0000 Subject: [PATCH 42/43] Include triplet in ccache key To avoid having the different jobs clash --- .github/workflows/build.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 823aa96..cf0d6fc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -136,11 +136,11 @@ jobs: uses: actions/cache@v3 with: path: ${{ matrix.ccache_path }} - key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} + key: ccache-${{ matrix.triplet }}-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} restore-keys: | - ccache-${{ env.mixxx_commit }}-${{ github.ref }}- - ccache-${{ env.mixxx_commit }}- - ccache- + ccache-${{ matrix.triplet }}-${{ env.mixxx_commit }}-${{ github.ref }}- + ccache-${{ matrix.triplet }}-${{ env.mixxx_commit }}- + ccache-${{ matrix.triplet }}- - name: Configure Mixxx build run: >- cmake @@ -166,7 +166,7 @@ jobs: with: # TODO: Share the key with the setup step path: ${{ matrix.ccache_path }} - key: ccache-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} + key: ccache-${{ matrix.triplet }}-${{ env.mixxx_commit }}-${{ github.ref }}-${{ github.run_number }} - name: Package Mixxx run: cpack -G ${{ matrix.cpack_generator }} -V && mv *.${{ matrix.package_extension }} "mixxx-${{ matrix.triplet }}-${{ env.mixxx_version }}.${{ matrix.package_extension }}" working-directory: mixxx/build From d0833cd1124408701f1f7d5a4b6722f5e1dd5a8e Mon Sep 17 00:00:00 2001 From: fwcd <fwcdmail@gmail.com> Date: Mon, 13 Nov 2023 02:20:24 +0000 Subject: [PATCH 43/43] Disable battery indicator in Linux build for now --- .github/workflows/build.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cf0d6fc..197630a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -48,7 +48,11 @@ jobs: ccache_path: ~/.ccache cpack_generator: TGZ package_extension: tar.gz - cmake_args: '' + # On Linux we build without battery support since this pulls in a + # dependency on GLib which is tricky to get right in a static linking scenario. + # See https://github.com/fwcd/m1xxx/pull/48#issuecomment-1807378063 + cmake_args: >- + -DBATTERY=OFF name: '${{ matrix.name }}' runs-on: '${{ matrix.os }}'