Skip to content

Commit 4ddb048

Browse files
committed
Merge remote-tracking branch 'upstream/2.7' into 2.7-rel
2 parents 413b9da + 900bf7e commit 4ddb048

File tree

4 files changed

+116
-24
lines changed

4 files changed

+116
-24
lines changed

.github/workflows/build.yml

Lines changed: 42 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -105,16 +105,54 @@ jobs:
105105
sudo xcode-select --switch "$DEVELOPER_DIR"
106106
xcrun --show-sdk-version
107107
108+
- name: "[Ubuntu] Install dependencies for nuget & vcpkg"
109+
if: runner.os == 'Linux'
110+
run: |
111+
# Install all dependencies needed for the host (x64-linux-release).
112+
# Most of them are related to Qt-related ports build also include some build essentials as well as the Android SDK manager
113+
sudo apt-get update && \
114+
sudo apt-get install -y \
115+
'^libxcb.*-dev' \
116+
autoconf \
117+
autoconf-archive \
118+
automake \
119+
bison \
120+
flex \
121+
mono-complete \
122+
libasound2-dev \
123+
libegl1-mesa-dev \
124+
libghc-resolv-dev \
125+
libglu1-mesa-dev \
126+
libltdl-dev \
127+
libudev-dev \
128+
libx11-xcb-dev \
129+
libxi-dev \
130+
libxkbcommon-dev \
131+
libxkbcommon-x11-dev \
132+
libxrender-dev \
133+
linux-libc-dev \
134+
nasm \
135+
pkg-config \
136+
python3-jinja2
137+
# Install NuGET
138+
sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
139+
sudo tee /usr/local/bin/nuget <<EOF
140+
#!/bin/sh
141+
mono /usr/local/bin/nuget.exe "\$@"
142+
EOF
143+
sudo chmod +x /usr/local/bin/nuget
144+
echo "VCPKG_MAX_CONCURRENCY=3" >> "${GITHUB_ENV}"
145+
108146
- name: "Authenticate to GitHub Packages (readwrite)"
109-
if: runner.os != 'Linux' && github.event_name == 'push' && github.repository_owner == 'mixxxdj'
147+
if: github.event_name == 'push' && github.repository_owner == 'mixxxdj'
110148
shell: bash
111149
run: |
112150
nuget sources add -Name "mixxx-github-packages" -Source "https://nuget.pkg.github.com/mixxxdj/index.json" -UserName "${{ github.repository_owner }}" -Password "${{ secrets.GITHUB_TOKEN }}" -StorePasswordInClearText
113151
nuget setapikey "${{ secrets.GITHUB_TOKEN }}" -Source "mixxx-github-packages"
114152
echo "VCPKG_BINARY_SOURCES=clear;nuget,mixxx-github-packages,readwrite;" >> "${GITHUB_ENV}"
115153
116154
- name: "Authenticate to GitHub Packages (read only)"
117-
if: runner.os != 'Linux' && (github.event_name == 'pull_request' || github.repository_owner != 'mixxxdj')
155+
if: github.event_name == 'pull_request'
118156
shell: bash
119157
run: |
120158
nuget sources add -Name "mixxx-github-packages" -Source "https://nuget.pkg.github.com/mixxxdj/index.json" -UserName "${{ github.repository_owner }}" -Password "${{ secrets.GITHUB_TOKEN }}" -StorePasswordInClearText
@@ -131,32 +169,12 @@ jobs:
131169
run: ${{ matrix.vcpkg_bootstrap }}
132170
working-directory: ${{ matrix.vcpkg_path }}
133171

134-
- name: "[android] Bootstrap vcpkg"
172+
- name: "[android] Install Android SDK"
135173
if: startsWith(matrix.deps_name, 'arm64-android')
136174
run: |
137-
# Install all dependencies needed for the host (x64-linux-release).
138-
# Most of them are related to Qt-related ports build also include some build essentials as well as the Android SDK manager
139175
sudo apt-get install -y \
140-
'^libxcb.*-dev' \
141-
autoconf \
142-
autoconf-archive \
143-
bison \
144-
flex \
145176
google-android-cmdline-tools-13.0-installer \
146-
libasound2-dev \
147-
libegl1-mesa-dev \
148-
libghc-resolv-dev \
149-
libglu1-mesa-dev \
150-
libltdl-dev \
151-
libx11-xcb-dev \
152-
libxi-dev \
153-
libxkbcommon-dev \
154-
libxkbcommon-x11-dev \
155-
libxrender-dev \
156-
linux-libc-dev \
157-
openjdk-17-jdk \
158-
pkg-config \
159-
python3-jinja2
177+
openjdk-17-jdk
160178
yes | sudo sdkmanager "platforms;android-${{ matrix.android_api }}" "platform-tools" "build-tools;${{ matrix.android_version }}" "ndk;${{ matrix.android_ndk }}"
161179
echo "ANDROID_NDK_HOME=/usr/lib/android-sdk/ndk/${{ matrix.android_ndk }}" >> "${GITHUB_ENV}"
162180
sudo sdkmanager --list_installed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
vcpkg_from_github(
2+
OUT_SOURCE_PATH SOURCE_PATH
3+
REPO taglib/taglib
4+
REF "v${VERSION}"
5+
SHA512 92955d8ae13772dcdf8e3125069c1793a2e20e75f1dbb82ef4e380da501963384f94d11cec49978203668b0915a587cab1c4e3fbea677cb7a006313a3d009062
6+
HEAD_REF master
7+
)
8+
9+
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
10+
set(WINRT_OPTIONS -DHAVE_VSNPRINTF=1 -DPLATFORM_WINRT=1)
11+
endif()
12+
13+
vcpkg_cmake_configure(
14+
SOURCE_PATH "${SOURCE_PATH}"
15+
OPTIONS
16+
-DBUILD_TESTING=OFF
17+
-DBUILD_EXAMPLES=OFF
18+
${WINRT_OPTIONS}
19+
)
20+
vcpkg_cmake_install()
21+
vcpkg_fixup_pkgconfig()
22+
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/taglib)
23+
24+
set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/taglib.pc")
25+
if(EXISTS "${pcfile}")
26+
vcpkg_replace_string("${pcfile}" "Requires: " "Requires: zlib" IGNORE_UNCHANGED)
27+
vcpkg_replace_string("${pcfile}" " -lz" "")
28+
endif()
29+
set(pcfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/taglib.pc")
30+
if(EXISTS "${pcfile}")
31+
vcpkg_replace_string("${pcfile}" "Requires: " "Requires: zlib" IGNORE_UNCHANGED)
32+
vcpkg_replace_string("${pcfile}" " -lz" "")
33+
endif()
34+
35+
# remove the debug/include files
36+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
37+
file(REMOVE "${CURRENT_PACKAGES_DIR}/bin/taglib-config.cmd" "${CURRENT_PACKAGES_DIR}/debug/bin/taglib-config.cmd") # Contains absolute paths
38+
39+
# remove bin directory for static builds (taglib creates a cmake batch file there)
40+
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
41+
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/taglib/taglib_export.h" "defined(TAGLIB_STATIC)" "1")
42+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
43+
endif()
44+
45+
vcpkg_copy_pdbs()
46+
47+
# copyright file
48+
file(COPY "${SOURCE_PATH}/COPYING.LGPL" DESTINATION "${CURRENT_PACKAGES_DIR}/share/taglib")
49+
file(COPY "${SOURCE_PATH}/COPYING.MPL" DESTINATION "${CURRENT_PACKAGES_DIR}/share/taglib")
50+
file(RENAME "${CURRENT_PACKAGES_DIR}/share/taglib/COPYING.LGPL" "${CURRENT_PACKAGES_DIR}/share/taglib/copyright")

overlay/ports/taglib/vcpkg.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"name": "taglib",
3+
"version-string": "2.2beta",
4+
"description": "TagLib Audio Meta-Data Library",
5+
"homepage": "https://taglib.org/",
6+
"license": "LGPL-2.1-only OR MPL-1.1",
7+
"dependencies": [
8+
"utfcpp",
9+
{
10+
"name": "vcpkg-cmake",
11+
"host": true
12+
},
13+
{
14+
"name": "vcpkg-cmake-config",
15+
"host": true
16+
},
17+
"zlib"
18+
]
19+
}

versions/t-/taglib.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
{
22
"versions": [
3+
{
4+
"git-tree": "74d93db16634cc647501e5eadfab96792e6a13d1",
5+
"version-string": "2.2beta",
6+
"port-version": 0
7+
},
38
{
49
"git-tree": "e00ac8989e0d8ecc37cc52d00f075a8244eec44e",
510
"version": "2.0.2",

0 commit comments

Comments
 (0)