You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.0 KiB
94 lines
3.0 KiB
3 years ago
|
# Copyright 1999-2021 Gentoo Authors
|
||
|
# Distributed under the terms of the GNU General Public License v2
|
||
|
|
||
|
EAPI=7
|
||
|
|
||
|
DESCRIPTION="Implements the SongCast protocol for use by upmpdcli and mpd"
|
||
|
HOMEPAGE="https://www.lesbonscomptes.com/upmpdcli/index.html"
|
||
|
|
||
|
openhome_packageversion="20200704"
|
||
|
|
||
|
SRC_URI="
|
||
|
https://www.lesbonscomptes.com/upmpdcli/downloads/${P}.tar.gz
|
||
|
https://www.lesbonscomptes.com/upmpdcli/downloads/openhome-sc2-${openhome_packageversion}.tar.gz
|
||
|
"
|
||
|
|
||
|
LICENSE="GPL-2"
|
||
|
SLOT="0"
|
||
|
KEYWORDS="~amd64 ~x86"
|
||
|
|
||
|
DEPEND="
|
||
|
dev-libs/expat
|
||
|
media-libs/alsa-lib
|
||
|
media-libs/libsamplerate
|
||
|
media-libs/libmpdclient
|
||
|
<=net-libs/libmicrohttpd-0.9.70
|
||
|
"
|
||
|
RDEPEND="${DEPEND}"
|
||
|
|
||
|
src_unpack() {
|
||
|
unpack ${P}.tar.gz
|
||
|
mkdir openhome || die "Can't create openhome directory"
|
||
|
cd openhome || die "Can't enter openhome directory"
|
||
|
unpack openhome-sc2-${openhome_packageversion}.tar.gz
|
||
|
}
|
||
|
|
||
|
src_configure() {
|
||
|
econf "--with-openhome=${WORKDIR}/openhome"
|
||
|
}
|
||
|
|
||
|
src_compile() {
|
||
|
#### Begin ohbuild.sh reverse engineer
|
||
|
|
||
|
# build_ohNet
|
||
|
cd "${WORKDIR}/openhome/ohNet" || die "Couldn't cd to ohNet dir"
|
||
|
einfo "Building ohnet"
|
||
|
emake native_only=yes
|
||
|
|
||
|
# build_ohNetGenerated
|
||
|
cd "${WORKDIR}/openhome/ohNetGenerated" || die "Couldn't cd to ohNetGenerated dir"
|
||
|
# TODO: get from environment/make target
|
||
|
deps="${WORKDIR}/openhome/ohNetGenerated/dependencies/Linux-x64/ohNet-Linux-x64-Release"
|
||
|
mkdir -p ${deps}/{include/ohnet,lib/{ohnet,t4,ui,PyOhNet}} || die "Couldn't mkdir deps"
|
||
|
cd ${deps} || die "Couldn't cd to deps dir"
|
||
|
|
||
|
ohnet="${WORKDIR}/openhome/ohNet"
|
||
|
find "$ohnet/Build" \( -name '*.a' -o -name '*.so' \) \
|
||
|
-exec cp '{}' lib ';' \
|
||
|
|| die "Couldn't cp binary libs"
|
||
|
|
||
|
cd "$ohnet/Build/Include" || die "Couldn't cd to include"
|
||
|
cp -R * "${deps}/include/ohnet" || die "Couldn't cp include"
|
||
|
# cd "$ohnet/Build/Tools" || die "Couldn't cd to tools"
|
||
|
# cp -R * "${deps}/lib/t4" || die "Couldn't cp tools"
|
||
|
cd "$ohnet/OpenHome/Net/T4/Templates" || die "Couldn't cd to templates"
|
||
|
cp -R * "${deps}/lib/t4" || die "Couldn't cp templates"
|
||
|
cd "$ohnet/OpenHome/Net/Bindings/Js/ControlPoint" || die "Couldn't cd to ui"
|
||
|
cp -R * "${deps}/lib/ui" || die "Couldn't cp ui"
|
||
|
cd "$ohnet/OpenHome/Net/Bindings/Python/PyOhNet" || die "Couldn't cd to py"
|
||
|
cp -R * "${deps}/lib/PyOhNet" || die "Couldn't cp py"
|
||
|
|
||
|
cd "${WORKDIR}/openhome/ohNetGenerated" || die "Couldn't cd later to ohNetGenerated dir"
|
||
|
einfo "Building ohnetgenerated"
|
||
|
emake native_only=yes
|
||
|
|
||
|
cd "Build/Include" || die "Couldn't cd later to include"
|
||
|
cp -R * "$ohnet/Build/Include" || die "Couldn't cp generated includes"
|
||
|
|
||
|
# build_ohTopology
|
||
|
cd "${WORKDIR}/openhome/ohTopology" || die "Couldn't cd to ohTopology dir"
|
||
|
mkdir -p build/Include/OpenHome/Av || die "Couldn't mkdir av"
|
||
|
cp -p OpenHome/Av/*.h build/Include/OpenHome/Av/ || die "Couldn't cp to av"
|
||
|
|
||
|
# build_ohSongcast
|
||
|
cd "${WORKDIR}/openhome/ohSongcast" || die "Couldn't cd to ohSongcast dir"
|
||
|
einfo "Building ohSongcast"
|
||
|
emake release=1 library_static
|
||
|
|
||
|
#### End ohbuild.sh reverse engineer
|
||
|
|
||
|
cd "${S}" || die "Failed to cd to source directory"
|
||
|
einfo "Building sc2mpd"
|
||
|
emake
|
||
|
}
|