Skip to content

Commit b562441

Browse files
autotools: Drop support in favor of Meson
See also: https://github.com/orgs/audacious-media-player/discussions/1749
1 parent eb28377 commit b562441

32 files changed

Lines changed: 23 additions & 8033 deletions

File tree

.github/actions/install-dependencies/action.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,13 @@ author: 'Audacious developers'
44

55
inputs:
66
os:
7-
description: 'The operating system to use (like ubuntu-22.04)'
8-
required: True
9-
build-system:
10-
description: 'The build system to use (autotools or meson)'
7+
description: 'The operating system to use (like ubuntu-24.04)'
118
required: True
129

1310
runs:
1411
using: "composite"
1512
steps:
16-
- run: '$GITHUB_ACTION_PATH/install-dependencies.sh "${{ inputs.os }}" "${{ inputs.build-system }}"'
13+
- run: '$GITHUB_ACTION_PATH/install-dependencies.sh "${{ inputs.os }}"'
1714
if: (!startsWith(inputs.os, 'windows'))
1815
shell: bash
1916

@@ -23,7 +20,6 @@ runs:
2320
msystem: UCRT64
2421
update: true
2522
install: >-
26-
mingw-w64-ucrt-x86_64-autotools
2723
mingw-w64-ucrt-x86_64-gcc
2824
mingw-w64-ucrt-x86_64-gtk2
2925
mingw-w64-ucrt-x86_64-meson

.github/actions/install-dependencies/install-dependencies.sh

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -9,44 +9,27 @@
99
# macOS 26: Qt 6 - GTK
1010

1111
os=$(tr '[:upper:]' '[:lower:]' <<< "$1")
12-
build_system=$(tr '[:upper:]' '[:lower:]' <<< "$2")
1312

14-
if [ -z "$os" ] || [ -z "$build_system" ]; then
13+
if [ -z "$os" ]; then
1514
echo 'Invalid or missing input parameters'
1615
exit 1
1716
fi
1817

1918
case "$os" in
2019
ubuntu-22.04)
21-
if [ "$build_system" = 'meson' ]; then
22-
sudo apt-get -qq update && sudo apt-get install libgtk2.0-dev qtbase5-dev libqt5svg5-dev meson
23-
else
24-
sudo apt-get -qq update && sudo apt-get install libgtk2.0-dev qtbase5-dev libqt5svg5-dev
25-
fi
20+
sudo apt-get -qq update && sudo apt-get install libgtk2.0-dev qtbase5-dev libqt5svg5-dev meson
2621
;;
2722

2823
ubuntu*)
29-
if [ "$build_system" = 'meson' ]; then
30-
sudo apt-get -qq update && sudo apt-get install libgtk-3-dev qt6-base-dev qt6-svg-dev gettext meson
31-
else
32-
sudo apt-get -qq update && sudo apt-get install libgtk-3-dev qt6-base-dev qt6-svg-dev gettext
33-
fi
24+
sudo apt-get -qq update && sudo apt-get install libgtk-3-dev qt6-base-dev qt6-svg-dev gettext meson
3425
;;
3526

3627
macos-15*)
37-
if [ "$build_system" = 'meson' ]; then
38-
brew update -q && brew install qt@5 meson
39-
else
40-
brew update -q && brew install qt@5 automake libiconv
41-
fi
28+
brew update -q && brew install qt@5 meson
4229
;;
4330

4431
macos*)
45-
if [ "$build_system" = 'meson' ]; then
46-
brew update -q && brew install qt@6 meson
47-
else
48-
brew update -q && brew install qt@6 automake libiconv
49-
fi
32+
brew update -q && brew install qt@6 meson
5033
;;
5134

5235
windows*)

.github/actions/run-action/action.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,16 @@ inputs:
77
description: 'The build action to run (configure, build, test or install)'
88
required: True
99
os:
10-
description: 'The operating system to use (like ubuntu-22.04)'
11-
required: True
12-
build-system:
13-
description: 'The build system to use (autotools or meson)'
10+
description: 'The operating system to use (like ubuntu-24.04)'
1411
required: True
1512

1613
runs:
1714
using: "composite"
1815
steps:
19-
- run: '$GITHUB_ACTION_PATH/run-action.sh "${{ inputs.action }}" "${{ inputs.os }}" "${{ inputs.build-system }}"'
16+
- run: '$GITHUB_ACTION_PATH/run-action.sh "${{ inputs.action }}" "${{ inputs.os }}"'
2017
if: (!startsWith(inputs.os, 'windows'))
2118
shell: bash
2219

23-
- run: '$GITHUB_ACTION_PATH/run-action.sh "${{ inputs.action }}" "${{ inputs.os }}" "${{ inputs.build-system }}"'
20+
- run: '$GITHUB_ACTION_PATH/run-action.sh "${{ inputs.action }}" "${{ inputs.os }}"'
2421
if: startsWith(inputs.os, 'windows')
2522
shell: msys2 {0}

.github/actions/run-action/run-action.sh

Lines changed: 9 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,8 @@
1010

1111
action=$(tr '[:upper:]' '[:lower:]' <<< "$1")
1212
os=$(tr '[:upper:]' '[:lower:]' <<< "$2")
13-
build_system=$(tr '[:upper:]' '[:lower:]' <<< "$3")
1413

15-
if [ -z "$action" ] || [ -z "$os" ] || [ -z "$build_system" ]; then
14+
if [ -z "$action" ] || [ -z "$os" ]; then
1615
echo 'Invalid or missing input parameters'
1716
exit 1
1817
fi
@@ -29,55 +28,27 @@ case "$action" in
2928
configure)
3029
case "$os" in
3130
ubuntu-22.04)
32-
if [ "$build_system" = 'meson' ]; then
33-
meson setup build -D qt5=true -D gtk2=true
34-
else
35-
./autogen.sh && ./configure --enable-qt5 --enable-gtk2
36-
fi
31+
meson setup build -D qt5=true -D gtk2=true
3732
;;
3833

3934
ubuntu*)
40-
if [ "$build_system" = 'meson' ]; then
41-
meson setup build
42-
else
43-
./autogen.sh && ./configure
44-
fi
35+
meson setup build
4536
;;
4637

4738
macos-15*)
4839
export PATH="/usr/local/opt/qt@5/bin:$PATH"
4940
export PKG_CONFIG_PATH="/usr/local/opt/qt@5/lib/pkgconfig:$PKG_CONFIG_PATH"
50-
51-
if [ "$build_system" = 'meson' ]; then
52-
meson setup build -D qt5=true -D gtk=false
53-
else
54-
export LDFLAGS="-L/usr/local/opt/libiconv/lib"
55-
export CPPFLAGS="-I/usr/local/opt/libiconv/include"
56-
autoreconf -I "/usr/local/share/gettext/m4" &&
57-
./configure --enable-qt5 --disable-gtk
58-
fi
41+
meson setup build -D qt5=true -D gtk=false
5942
;;
6043

6144
macos*)
6245
export PATH="/opt/homebrew/opt/qt@6/bin:$PATH"
6346
export PKG_CONFIG_PATH="/opt/homebrew/opt/qt@6/libexec/lib/pkgconfig:$PKG_CONFIG_PATH"
64-
65-
if [ "$build_system" = 'meson' ]; then
66-
meson setup build -D gtk=false
67-
else
68-
export LDFLAGS="-L/opt/homebrew/opt/libiconv/lib"
69-
export CPPFLAGS="-I/opt/homebrew/opt/libiconv/include"
70-
autoreconf -I "/opt/homebrew/opt/gettext/share/gettext/m4" &&
71-
./configure --disable-gtk
72-
fi
47+
meson setup build -D gtk=false
7348
;;
7449

7550
windows*)
76-
if [ "$build_system" = 'meson' ]; then
77-
meson setup build -D gtk2=true
78-
else
79-
./autogen.sh && ./configure --enable-gtk2
80-
fi
51+
meson setup build -D gtk2=true
8152
;;
8253

8354
*)
@@ -88,32 +59,16 @@ case "$action" in
8859
;;
8960

9061
build)
91-
if [ "$build_system" = 'meson' ]; then
92-
meson compile -C build
93-
elif [[ "$os" == macos* ]]; then
94-
make -j$(sysctl -n hw.logicalcpu)
95-
else
96-
make -j$(nproc)
97-
fi
62+
meson compile -C build
9863
;;
9964

10065
test)
10166
cd src/libaudcore/tests
102-
if [ "$build_system" = 'meson' ]; then
103-
meson setup build && meson test -v -C build
104-
elif [[ "$os" == macos* ]]; then
105-
make -j$(sysctl -n hw.logicalcpu) test && ./test
106-
else
107-
make -j$(nproc) test && ./test
108-
fi
67+
meson setup build && meson test -v -C build
10968
;;
11069

11170
install)
112-
if [ "$build_system" = 'meson' ]; then
113-
$_sudo meson install -C build
114-
else
115-
$_sudo make install
116-
fi
71+
$_sudo meson install -C build
11772
;;
11873

11974
*)

.github/workflows/c-cpp.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,38 +13,33 @@ jobs:
1313
os: [ubuntu-22.04, ubuntu-24.04,
1414
macos-15-intel, macos-26,
1515
windows-2022]
16-
build-system: [autotools, meson]
1716
fail-fast: false
1817
runs-on: ${{ matrix.os }}
1918

2019
steps:
2120
- name: Checkout audacious
22-
uses: actions/checkout@v5
21+
uses: actions/checkout@v6
2322

2423
- name: Install dependencies
2524
uses: ./.github/actions/install-dependencies
2625
with:
2726
os: ${{ matrix.os }}
28-
build-system: ${{ matrix.build-system }}
2927

3028
- name: Configure
3129
uses: ./.github/actions/run-action
3230
with:
3331
action: 'configure'
3432
os: ${{ matrix.os }}
35-
build-system: ${{ matrix.build-system }}
3633

3734
- name: Build
3835
uses: ./.github/actions/run-action
3936
with:
4037
action: 'build'
4138
os: ${{ matrix.os }}
42-
build-system: ${{ matrix.build-system }}
4339

4440
- name: Test
4541
if: startsWith(matrix.os, 'ubuntu')
4642
uses: ./.github/actions/run-action
4743
with:
4844
action: 'test'
4945
os: ${{ matrix.os }}
50-
build-system: ${{ matrix.build-system }}

0 commit comments

Comments
 (0)