11name : Build and test Guitar++
22
3- on :
3+ on :
44 push :
55 branches :
66 - master
77
88jobs :
9- Testing_Code_Quality :
10- runs-on : ubuntu-latest
9+ Testing_Code_Quality :
10+ runs-on : ubuntu-24.04
1111 steps :
1212 # Checkout
1313 - name : Checkout
@@ -20,67 +20,67 @@ jobs:
2020 run : |
2121 sudo apt-get update && sudo apt-get install build-essential
2222 sudo apt install cmake -y
23- sudo apt install clang-12 clang-tidy-12 clang-format-12 ninja-build xorg-dev libglew-dev libgl-dev libxrandr-dev libxinerama-dev libgtest-dev unzip wget -y
24-
23+ sudo apt install clang-18 clang-tidy-18 clang-format-18 ninja-build xorg-dev libglew-dev libgl-dev libxrandr-dev libxinerama-dev libgtest-dev unzip wget -y
24+
2525 # Download and setup Bass libraries
2626 - name : Setup Bass Libraries
2727 run : |
2828 cd bass
2929 # Download Bass library
3030 echo "Downloading Bass library..."
3131 wget https://www.un4seen.com/files/bass24-linux.zip -O bass24-linux.zip
32-
33- # Download Bass FX library
32+
33+ # Download Bass FX library
3434 echo "Downloading Bass FX library..."
3535 wget https://www.un4seen.com/files/z/0/bass_fx24-linux.zip -O bass_fx24-linux.zip
36-
36+
3737 # Extract Bass library
3838 echo "Extracting Bass library..."
3939 unzip -o bass24-linux.zip
40-
40+
4141 # Extract Bass FX library
42- echo "Extracting Bass FX library..."
42+ echo "Extracting Bass FX library..."
4343 unzip -o bass_fx24-linux.zip
44-
44+
4545 # Find and copy header files
4646 echo "Locating and copying header files..."
4747 find . -name "bass.h" -exec cp {} ./ \;
4848 find . -name "bass_fx.h" -exec cp {} ./ \;
49-
49+
5050 # Find and copy library files for 64-bit Linux
5151 echo "Locating and copying library files..."
5252 find . -name "libbass.so" -exec cp {} ./ \;
5353 find . -name "libbass_fx.so" -exec cp {} ./ \;
54-
54+
5555 # If 64-bit libraries are in a subdirectory, try to find them
5656 find . -path "*/x64/*" -name "libbass.so" -exec cp {} ./ \; 2>/dev/null || true
5757 find . -path "*/x64/*" -name "libbass_fx.so" -exec cp {} ./ \; 2>/dev/null || true
58-
58+
5959 # Verify files are present
6060 echo "Verifying required files..."
6161 ls -la *.h *.so 2>/dev/null || echo "Some files may be missing"
62-
62+
6363 # Cleanup downloaded archives and extracted directories
6464 rm -rf bass24-linux.zip bass_fx24-linux.zip bass*/ 2>/dev/null || true
65-
65+
6666 echo "Bass library setup completed"
67-
67+
6868 - name : Setup cmake
6969 uses : jwlawson/actions-setup-cmake@v1.8
7070 with :
7171 cmake-version : ' 3.16.x'
72-
72+
7373 - name : Build project
7474 run : |
75- export CC=$(which clang-12 )
76- export CXX=$(which clang++-12 )
75+ export CC=$(which clang-18 )
76+ export CXX=$(which clang++-18 )
7777 mkdir build && cd build
7878 cmake .. -G Ninja
7979 cmake --build . --config Debug --target all -j $(nproc) --
8080
8181 - name : Test project
8282 run : |
83- export CC=$(which clang-12 )
84- export CXX=$(which clang++-12 )
83+ export CC=$(which clang-18 )
84+ export CXX=$(which clang++-18 )
8585 cd build
8686 ctest -j 20 -C Debug -T test --output-on-failure
0 commit comments