summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgit user2023-08-01 13:26:08 +0200
committergit user2023-08-01 13:26:08 +0200
commit651f45fba733c054b72b40ac053c167e6cdf7347 (patch)
tree8fc8ccaa6df6ee25758f3827f324e32044d7108b
parentc74c073025bbb4ce449a3c51bc8e7586043a7bf1 (diff)
downloadaur-651f45fba733c054b72b40ac053c167e6cdf7347.tar.gz
Added missing 'python-joblib' dependency and silenced most compilation warnings.
-rw-r--r--.SRCINFO48
-rw-r--r--PKGBUILD202
2 files changed, 174 insertions, 76 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f2f3da4a8fc2..b5b2555ae53e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,47 +1,55 @@
pkgbase = tizonia-all-git
- pkgdesc = Command-line cloud music player for Linux with support for Spotify, Google Play Music, YouTube, SoundCloud, Plex servers and Chromecast devices.
+ pkgdesc = Command-line cloud music player and downloader for Linux with support for YouTube, SoundCloud, Plex servers, Chromecast devices and generic streams and websites.
pkgver = 0.22.0+28.r3903.20210110.a1e8f8bd
- pkgrel = 1
+ pkgrel = 2
url = https://www.tizonia.org
arch = x86_64
- license = LGPL
+ license = LGPL3
makedepends = git
makedepends = boost
makedepends = check
makedepends = meson
makedepends = samurai
- depends = libmad
- depends = taglib
- depends = mediainfo
- depends = sdl
- depends = sqlite
- depends = lame
+ makedepends = doxygen
+ makedepends = python-breathe
+ makedepends = python-recommonmark
+ makedepends = python-sphinx-alabaster-theme
+ depends = boost-libs
depends = faad2
+ depends = hicolor-icon-theme
+ depends = lame
depends = libcurl-gnutls
- depends = libvpx
- depends = mpg123
- depends = opusfile
depends = libfishsound
+ depends = libmad
depends = liboggz
- depends = youtube-dl
depends = libpulse
- depends = boost-libs
- depends = hicolor-icon-theme
+ depends = libvpx
+ depends = mediainfo
+ depends = mpg123
+ depends = opusfile
depends = python-eventlet
+ depends = python-joblib
depends = python-levenshtein
+ depends = python>=3
+ depends = sdl
+ depends = sqlite
+ depends = taglib
+ depends = youtube-dl
depends = log4c
- depends = python-pafy
+ depends = python-fuzzywuzzy
depends = python-gmusicapi
- depends = python-soundcloud
- depends = python-pychromecast
+ depends = python-pafy
depends = python-plexapi
- depends = python-fuzzywuzzy
+ depends = python-pychromecast
+ depends = python-soundcloud
depends = python-spotipy
provides = tizonia-all=0.22.0+28.r3903.20210110.a1e8f8bd
provides = tizonia=0.22.0+28.r3903.20210110.a1e8f8bd
+ provides = tizonia-docs=0.22.0+28.r3903.20210110.a1e8f8bd
conflicts = tizonia-all
conflicts = tizonia
- source = tizonia-all-git::git+https://github.com/tizonia/tizonia-openmax-il.git
+ conflicts = tizonia-docs
+ source = tizonia::git+https://github.com/tizonia/tizonia-openmax-il.git
source = fix_chromecast_placeholders_error.patch::https://github.com/tizonia/tizonia-openmax-il/files/9795320/fix_chromecast_placeholders_error.patch.txt
sha256sums = SKIP
sha256sums = 8b538221bb0bf0d068a8502fc3bd9e2d6cea1fc9311a32d93e5aec13db646eea
diff --git a/PKGBUILD b/PKGBUILD
index e676255843e4..fe121b632271 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,84 +1,125 @@
# Maintainer: dreieck (https://aur.archlinux.org/account/dreieck)
# Contributor: juanrubio
-_githubname=tizonia-openmax-il
-pkgname=tizonia-all-git
+_pkgname='tizonia'
+_githubname="${_pkgname}-openmax-il"
+pkgname="${_pkgname}-all-git"
pkgver=0.22.0+28.r3903.20210110.a1e8f8bd
-pkgrel=1
-pkgdesc="Command-line cloud music player for Linux with support for Spotify, Google Play Music, YouTube, SoundCloud, Plex servers and Chromecast devices."
-arch=('x86_64')
+pkgrel=2
+pkgdesc="Command-line cloud music player and downloader for Linux with support for YouTube, SoundCloud, Plex servers, Chromecast devices and generic streams and websites."
+arch=(
+ 'x86_64'
+)
url="https://www.tizonia.org"
-license=('LGPL')
-makedepends=('git' 'boost' 'check' 'meson' 'samurai')
+license=('LGPL3')
depends=(
- # official repositories:
- 'libmad'
- 'taglib'
- 'mediainfo'
- 'sdl'
- 'sqlite'
- 'lame'
- 'faad2'
- 'libcurl-gnutls'
- 'libvpx'
- 'mpg123'
- 'opusfile'
- 'libfishsound'
- 'liboggz'
- 'youtube-dl'
- 'libpulse'
- 'boost-libs'
- 'hicolor-icon-theme'
- 'python-eventlet'
- 'python-levenshtein'
-
- # AUR:
- 'log4c'
- 'python-pafy'
- 'python-gmusicapi'
- 'python-soundcloud'
- 'python-pychromecast'
- 'python-plexapi'
- 'python-fuzzywuzzy'
- 'python-spotipy'
+ # official repositories:
+ 'boost-libs'
+ 'faad2'
+ 'hicolor-icon-theme'
+ 'lame'
+ 'libcurl-gnutls'
+ 'libfishsound'
+ 'libmad'
+ 'liboggz'
+ 'libpulse'
+ 'libvpx'
+ 'mediainfo'
+ 'mpg123'
+ 'opusfile'
+ 'python-eventlet'
+ 'python-joblib' # Needed by 'usr/lib/python3.11/site-packages/tizyoutubeproxy.py', 'usr/lib/python3.11/site-packages/tiziheartproxy.py', 'usr/lib/python3.11/site-packages/tiztuneinproxy.py'.
+ 'python-levenshtein'
+ 'python>=3'
+ 'sdl'
+ 'sqlite'
+ 'taglib'
+ 'youtube-dl'
+
+ # AUR:
+ 'log4c'
+ 'python-fuzzywuzzy'
+ 'python-gmusicapi' # [2023-07-31] Google Music service is dead, but `python-gmusicapi` is still needed by `/usr/lib/python3.11/site-packages/tizgmusicproxy.py`, see https://aur.archlinux.org/packages/tizonia-all-git#comment-927188 and follow up.
+ 'python-pafy'
+ 'python-plexapi'
+ 'python-pychromecast'
+ 'python-soundcloud'
+ 'python-spotipy'
+
+)
+makedepends=(
+ # For retrieving the source code:
+ 'git'
+
+ # For building the software:
+ 'boost'
+ 'check'
+ 'meson'
+ 'samurai'
+
+ # For building the documentation:
+ 'doxygen'
+ 'python-breathe'
+ 'python-recommonmark'
+ 'python-sphinx-alabaster-theme'
)
+optdepends=()
provides=(
- "tizonia-all=${pkgver}"
- "tizonia=${pkgver}"
+ "${_pkgname}-all=${pkgver}"
+ "${_pkgname}=${pkgver}"
+ "${_pkgname}-docs=${pkgver}"
)
conflicts=(
- 'tizonia-all'
- 'tizonia'
+ "${_pkgname}-all"
+ "${_pkgname}"
+ "${_pkgname}-docs"
)
options=()
source=(
- "${pkgname}"::git+https://github.com/tizonia/${_githubname}.git
+ "${_pkgname}"::git+https://github.com/tizonia/${_githubname}.git
"fix_chromecast_placeholders_error.patch::https://github.com/tizonia/tizonia-openmax-il/files/9795320/fix_chromecast_placeholders_error.patch.txt"
+ #"tizonia-fix-boost-bind-include.patch::http://ix.io/4C2K"
)
sha256sums=(
'SKIP'
'8b538221bb0bf0d068a8502fc3bd9e2d6cea1fc9311a32d93e5aec13db646eea'
+ #'27dde976596a6c2969c787d527d3ee112ad3e8d6fccff5274b466848198fa8f5'
)
+if which ccache > /dev/null 2>&1; then
+ makedepends+=('ccache')
+ options+=('ccache')
+ _USE_CCACHE=true
+else
+ _USE_CCACHE=false
+fi
prepare() {
- if command -v tizonia > /dev/null 2>&1; then
+ if command -v tizonia > /dev/null 2>&1 || [ -n "`pacman -Qqs tizonia`" ]; then
plain ''
- error "Please uninstall tizonia, tizonia-all or tizonia-all-git before proceeding."
- error "See https://github.com/tizonia/tizonia-openmax-il/issues/485."
+ error "'tizonia' executable found in \$PATH."
+ error "`pacman -Qqs tizonia | tr '\n' ' '` packages found installed."
+ error "Please uninstall tizonia (packages are likely: 'tizonia', 'tizonia-all' or 'tizonia-all-git') before proceeding."
+ error '(See https://github.com/tizonia/tizonia-openmax-il/issues/485.)'
plain ''
exit 1
fi
- cd "$pkgname"
+ cp -a "${srcdir}/${_pkgname}" "${srcdir}/${_pkgname}.unpatched"
+
+ cd "${srcdir}/${_pkgname}"
- for _patch in "${srcdir}/fix_chromecast_placeholders_error.patch"; do
+ for _patch in "${srcdir}"/fix_chromecast_placeholders_error.patch; do
msg2 "Applying patch '$(basename "${_patch}")' ..."
patch -Np1 --follow-symlinks -i "${_patch}"
done
+
+ cp -a "${srcdir}/${_pkgname}" "${srcdir}/${_pkgname}.patched"
+
+ git log > git.log
}
pkgver() {
- cd "$pkgname"
+ cd "${srcdir}/${_pkgname}"
_ver="$(git describe --tags | sed -E -e 's|^[vV]||' -e 's|\-g[0-9a-f]*$||' | tr '-' '+')"
_rev="$(git rev-list --count HEAD)"
@@ -93,18 +134,67 @@ pkgver() {
fi
}
-
build() {
- #export CFLAGS='-O2 -s -DNDEBUG'
- #export CXXFLAGS='-O2 -s -DNDEBUG -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security'
- #export CC=gcc-9
- #export CXX=c++-9
- # libspotify does no longer exist & also does no longer work, so disable it.
+ cd "${srcdir}"
+
+ ## Silence warnings that are due to old codebase.
+ _no_cc_warnings=(
+ 'address'
+ 'attribute-warning'
+ 'deprecated-declarations'
+ 'format-security'
+ 'strict-aliasing'
+ 'unused-result'
+ )
+ _CFLAGSAPPEND=''
+ for _no_cc_warn in "${_no_cc_warnings[@]}"; do
+ _CFLAGSAPPEND+=" -Wno-error=${_no_cc_warn} -Wno-${_no_cc_warn}"
+ done
+ _CFLAGSAPPEND+=' -DBOOST_BIND_GLOBAL_PLACEHOLDERS=1' # Work around warning message '/usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’'.
+ CFLAGS+=" ${_CFLAGSAPPEND}"
+ CXXFLAGS+=" ${_CFLAGSAPPEND}"
+ export CFLAGS
+ export CXXFLAGS
+
+ # CC and CXX environment variables seem to be ignored.
+
+ # Meson build options: See `meson_options.txt`.
+ # * [2023-06-24] libspotify does no longer exist & also does no longer work, so disable it (`libspotify` would be the needed dependency), see https://aur.archlinux.org/packages/tizonia-all-git#comment-921052.
+ # * [2023-07-31] Google Music service is dead, but `python-gmusicapi` is still needed by `/usr/lib/python3.11/site-packages/tizgmusicproxy.py`, see https://aur.archlinux.org/packages/tizonia-all-git#comment-927188 and follow up.
+ # * [2023-08-01] Building tests fails with `clients/youtube/libtizyoutube/tests/check_tizyoutube.c:121:12: error: too few arguments to function ‘tiz_youtube_init’`, see https://github.com/tizonia/tizonia-openmax-il/issues/799.
export SAMUFLAGS="-j1" # Eats a lot of ram.
- meson setup --prefix=/usr --buildtype=plain -Dlibspotify=false "${pkgname}" build
+ meson setup --prefix=/usr --buildtype=plain \
+ -Dplayer=true \
+ -Dlibspotify=false \
+ -Dalsa=true \
+ -Daac=true \
+ -Dgcc-warnings=false \
+ -Dtest=false \
+ -Dbashcompletiondir=/etc/bash_completion.d \
+ -Dzshcompletiondir=/usr/share/zsh/site-functions \
+ -Ddocs=true \
+ -Ddocs_options='["man","html"]' \
+ -Ddocs_paper=a4 \
+ -Dclients=true \
+ -Dplugins='["aac_decoder","chromecast_renderer","file_reader","file_writer","flac_decoder","http_renderer","http_source","inproc_reader","inproc_writer","mp3_decoder","mp3_encoder","mp3_metadata","mp4_demuxer","mpeg_audio_decoder","ogg_demuxer","ogg_muxer","opus_decoder","opusfile_decoder","pcm_decoder","pcm_renderer_alsa","pcm_renderer_pa","spotify","vorbis_decoder","vp8_decoder","webm_demuxer","yuv_renderer"]' \
+ "${_pkgname}" build
samu -v -C build
}
package() {
- DESTDIR=$pkgdir samu -C build install
+ cd "${srcdir}"
+
+ DESTDIR="${pkgdir}" samu -C build install
+
+ cd "${srcdir}/${_pkgname}"
+
+ # BUILDING.md BUILDING_with_meson.md CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md ISSUE_TEMPLATE.md PROJECT.md README.md ROADMAP.md
+ for _docfile in git.log; do
+ install -Dvm644 "${_docfile}" "${pkgdir}/usr/share/doc/${_pkgname}/${_docfile}"
+ done
+
+ for _licensefile in COPYING.LESSER COPYING.LESSER.md; do
+ install -Dvm644 "${_licensefile}" "${pkgdir}/usr/share/licenses/${pkgname}/${_licensefile}"
+ ln -svr "${pkgdir}/usr/share/licenses/${pkgname}/${_licensefile}" "${pkgdir}/usr/share/doc/${_pkgname}/${_licensefile}"
+ done
}