CI: Remove unused homebrew and macports build
This commit is contained in:
parent
f9a593dc74
commit
c975c1e4aa
|
@ -902,235 +902,6 @@ jobs:
|
||||||
run: rsync -e "ssh -p ${{secrets.SSH_PORT}} -o StrictHostKeyChecking=no" -var build/*.dmg ${{secrets.SSH_USER}}@${{secrets.SSH_HOST}}:${{env.upload_path}}/
|
run: rsync -e "ssh -p ${{secrets.SSH_PORT}} -o StrictHostKeyChecking=no" -var build/*.dmg ${{secrets.SSH_USER}}@${{secrets.SSH_HOST}}:${{env.upload_path}}/
|
||||||
|
|
||||||
|
|
||||||
build-macos-homebrew:
|
|
||||||
name: Build macOS Homebrew
|
|
||||||
if: false
|
|
||||||
runs-on: macos-11
|
|
||||||
steps:
|
|
||||||
|
|
||||||
- name: Remove installed brew packages
|
|
||||||
run: brew uninstall $(brew list)
|
|
||||||
|
|
||||||
- name: Update packages
|
|
||||||
run: brew update
|
|
||||||
|
|
||||||
- name: Upgrade packages
|
|
||||||
run: brew upgrade || true
|
|
||||||
|
|
||||||
- name: brew tap
|
|
||||||
run: brew tap homebrew/core
|
|
||||||
|
|
||||||
- name: Install packages
|
|
||||||
run: brew install pkg-config cmake ninja meson bison flex wget create-dmg gettext boost protobuf protobuf-c rsync glib glib-openssl glib-utils glib-networking gdk-pixbuf gobject-introspection orc libffi openssl sqlite fftw libmtp libplist libxml2 libsoup libogg libvorbis flac wavpack opus speex mpg123 lame twolame taglib chromaprint libebur128 libbs2b libcdio libopenmpt faad2 faac fdk-aac musepack game-music-emu qt6 || true
|
|
||||||
|
|
||||||
- name: Use modified gstreamer plugin formulas
|
|
||||||
run: |
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gstreamer.rb
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gst-plugins-base.rb
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gst-plugins-good.rb
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gst-plugins-bad.rb
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gst-plugins-ugly.rb
|
|
||||||
wget https://files.strawberrymusicplayer.org/patches/gst-libav.rb
|
|
||||||
mv gstreamer.rb gst-plugins-{base,good,bad,ugly}.rb gst-libav.rb /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/g/
|
|
||||||
|
|
||||||
- name: Build and install gstreamer
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gstreamer
|
|
||||||
|
|
||||||
- name: Build and install gst-plugins-base
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gst-plugins-base
|
|
||||||
|
|
||||||
- name: Build and install gst-plugins-good
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gst-plugins-good
|
|
||||||
|
|
||||||
- name: Build and install gst-plugins-bad
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gst-plugins-bad
|
|
||||||
|
|
||||||
- name: Build and install gst-plugins-ugly
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gst-plugins-ugly
|
|
||||||
|
|
||||||
- name: Build and install gst-libav
|
|
||||||
env:
|
|
||||||
HOMEBREW_NO_INSTALL_FROM_API: 1
|
|
||||||
run: brew reinstall --build-from-source gst-libav
|
|
||||||
|
|
||||||
- name: Build libgpod
|
|
||||||
env:
|
|
||||||
PERL_MM_USE_DEFAULT: 1
|
|
||||||
run: |
|
|
||||||
git clone https://github.com/strawberrymusicplayer/strawberry-libgpod
|
|
||||||
cd strawberry-libgpod
|
|
||||||
mkdir build
|
|
||||||
cd build
|
|
||||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
|
||||||
make -j 4
|
|
||||||
sudo make install
|
|
||||||
|
|
||||||
- name: Replace relative library @loader_path paths - macdeployqt does not understand these.
|
|
||||||
run: |
|
|
||||||
for library in $(find -E /usr/local/Cellar -type f -regex '.*/lib/.*\.framework/Versions/A/Qt(Core|Concurrent|Network|Sql|Widgets|Gui|DBus)' -o -name '*.dylib'); do
|
|
||||||
library_paths=$(otool -L "${library}" | sed -n "s/^\t\(.*\) (compatibility version [0-9]*\.[0-9]*\.[0-9]*, current version [0-9]*\.[0-9]*\.[0-9]*)/\1/p")
|
|
||||||
for library_path in ${library_paths}; do
|
|
||||||
if ! [ "$(echo "${library_path}" | grep "^@loader_path" || true)" = "" ]; then
|
|
||||||
new_library_path=$(echo "${library_path}" | sed -E 's/@loader_path(\/\.\.)+\/opt/\/usr\/local\/opt/g')
|
|
||||||
if ! [ "${new_library_path}" = "" ] && ! [ "${new_library_path}" = "${library_path}" ] && [ -e "${new_library_path}" ]; then
|
|
||||||
sudo install_name_tool -change "${library_path}" "${new_library_path}" "${library}"
|
|
||||||
else
|
|
||||||
echo "${library} points to ${library_path}, could not resolve to absolute path."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Create Build Environment
|
|
||||||
run: cmake -E make_directory build
|
|
||||||
|
|
||||||
- name: Configure CMake
|
|
||||||
env:
|
|
||||||
MACOSX_DEPLOYMENT_TARGET: 11.0
|
|
||||||
PKG_CONFIG_PATH: /usr/local/lib/pkgconfig
|
|
||||||
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_WITH_QT6=ON -DBUILD_WERROR=OFF -DUSE_BUNDLE=ON -DCMAKE_PREFIX_PATH=/usr/local/opt/qt6/lib/cmake -DICU_ROOT=/usr/local/opt/icu4c -DPROTOBUF_INCLUDE_DIRS=/usr/local/include
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: cmake --build build --config Release --parallel 4
|
|
||||||
|
|
||||||
- name: Install
|
|
||||||
working-directory: build
|
|
||||||
run: make install
|
|
||||||
|
|
||||||
- name: Remove problematic files
|
|
||||||
run: |
|
|
||||||
sudo rm -rf /usr/local/opt/qt6/share/qt/plugins/virtualkeyboard /usr/local/opt/qt6/share/qt/plugins/platforminputcontexts
|
|
||||||
sudo rm -f /usr/local/Cellar/qt/*/share/qt/plugins/imageformats/libqpdf.dylib
|
|
||||||
|
|
||||||
- name: Manually copy files not handled by macdeployqt
|
|
||||||
working-directory: build
|
|
||||||
run: |
|
|
||||||
mkdir -p strawberry.app/Contents/Frameworks/
|
|
||||||
cp /usr/local/lib/{libsoup-3.0.0.dylib,libswresample.4.dylib,libswscale.7.dylib,libpostproc.57.dylib} strawberry.app/Contents/Frameworks/
|
|
||||||
|
|
||||||
- name: Deploy
|
|
||||||
env:
|
|
||||||
GIO_EXTRA_MODULES: /usr/local/lib/gio/modules
|
|
||||||
GST_PLUGIN_SCANNER: /usr/local/opt/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner
|
|
||||||
GST_PLUGIN_PATH: /usr/local/lib/gstreamer-1.0
|
|
||||||
working-directory: build
|
|
||||||
run: make deploy
|
|
||||||
|
|
||||||
- name: Deploy check
|
|
||||||
working-directory: build
|
|
||||||
run: make deploycheck
|
|
||||||
|
|
||||||
- name: Create DMG
|
|
||||||
working-directory: build
|
|
||||||
run: make dmg
|
|
||||||
|
|
||||||
|
|
||||||
build-macos-macports:
|
|
||||||
name: Build macOS Macports
|
|
||||||
if: false
|
|
||||||
runs-on: macos-11
|
|
||||||
steps:
|
|
||||||
- name: Install macports
|
|
||||||
run: |
|
|
||||||
macports_version=$(wget -q -O- 'https://github.com/macports/macports-base' | sed -n 's,.*releases/tag/\([^"&;]*\)".*,\1,p' | sed 's/^v//g' | sort -V | tail -1)
|
|
||||||
wget https://github.com/macports/macports-base/releases/download/v${macports_version}/MacPorts-${macports_version}-11-BigSur.pkg
|
|
||||||
sudo installer -pkg ./MacPorts-${macports_version}-11-BigSur.pkg -target /
|
|
||||||
|
|
||||||
- name: Uninstall homebrew
|
|
||||||
run: |
|
|
||||||
curl -sLO https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh
|
|
||||||
chmod +x ./uninstall.sh
|
|
||||||
sudo ./uninstall.sh --force
|
|
||||||
|
|
||||||
- name: Update macports
|
|
||||||
run: sudo /opt/local/bin/port -v selfupdate
|
|
||||||
|
|
||||||
- name: Install packages
|
|
||||||
run: sudo /opt/local/bin/port -N -p install wget gettext glib2 pkgconfig cmake boost protobuf-cpp sqlite3 chromaprint libebur128 fftw taglib libcdio libmtp
|
|
||||||
|
|
||||||
- name: Install gstreamer
|
|
||||||
run: sudo /opt/local/bin/port -N -p install gstreamer1 gstreamer1-gst-plugins-base gstreamer1-gst-plugins-good gstreamer1-gst-plugins-bad gstreamer1-gst-plugins-ugly gstreamer1-gst-libav
|
|
||||||
|
|
||||||
- name: Install gst-plugins-bad
|
|
||||||
run: sudo /opt/local/bin/port -N -p install gstreamer1-gst-plugins-bad +faac
|
|
||||||
|
|
||||||
- name: Install qt6-qtbase
|
|
||||||
run: sudo /opt/local/bin/port -N -p install qt6-qtbase
|
|
||||||
|
|
||||||
- name: Install qt6-qttools
|
|
||||||
run: sudo /opt/local/bin/port -N -p install qt6-qttools || true
|
|
||||||
|
|
||||||
- name: Install qt6-sqlite-plugin
|
|
||||||
run: sudo /opt/local/bin/port -N -p install qt6-sqlite-plugin
|
|
||||||
|
|
||||||
- name: Install libgpod
|
|
||||||
run: sudo /opt/local/bin/port -N -p install libgpod || true
|
|
||||||
|
|
||||||
- name: Add /opt/local/bin to PATH
|
|
||||||
run: echo "/opt/local/bin" >> $GITHUB_PATH
|
|
||||||
|
|
||||||
- name: Install create-dmg
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/build
|
|
||||||
cd ~/build
|
|
||||||
git clone https://github.com/create-dmg/create-dmg
|
|
||||||
cd create-dmg
|
|
||||||
sudo make install
|
|
||||||
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Create Build Environment
|
|
||||||
run: /opt/local/bin/cmake -E make_directory build
|
|
||||||
|
|
||||||
- name: Configure CMake
|
|
||||||
env:
|
|
||||||
MACOSX_DEPLOYMENT_TARGET: 11.0
|
|
||||||
PKG_CONFIG_PATH: /opt/local/lib/pkgconfig
|
|
||||||
run: /opt/local/libexec/qt6/bin/qt-cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_WITH_QT6=ON -DBUILD_WERROR=OFF -DUSE_BUNDLE=ON -DENABLE_DBUS=OFF
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: /opt/local/bin/cmake --build build --config Release --parallel 4
|
|
||||||
|
|
||||||
- name: Install
|
|
||||||
working-directory: build
|
|
||||||
run: make install
|
|
||||||
|
|
||||||
- name: Deploy
|
|
||||||
env:
|
|
||||||
GIO_EXTRA_MODULES: /opt/local/lib/gio/modules
|
|
||||||
GST_PLUGIN_SCANNER: /opt/local/libexec/gstreamer-1.0/gst-plugin-scanner
|
|
||||||
GST_PLUGIN_PATH: /opt/local/lib/gstreamer-1.0
|
|
||||||
working-directory: build
|
|
||||||
run: make deploy
|
|
||||||
|
|
||||||
- name: Deploy check
|
|
||||||
working-directory: build
|
|
||||||
run: make deploycheck
|
|
||||||
|
|
||||||
- name: Create DMG
|
|
||||||
working-directory: build
|
|
||||||
run: make dmg
|
|
||||||
|
|
||||||
|
|
||||||
build-windows-mingw:
|
build-windows-mingw:
|
||||||
name: Build Windows MinGW
|
name: Build Windows MinGW
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
Loading…
Reference in New Issue