blob: eaf99904a5f0b9b01c077a68b5e8ae86edd0c14e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# Maintainer: Mikata Riko <sanbikappa@qq.com>
# Contributor: pureboys <yuyuud@yuyuud@gmail.com>
pkgname='kikoplay'
pkgver=1.0.0
pkgrel=2
pkgdesc="linux danmaku player"
arch=('x86_64')
license=('GPL3')
url="https://github.com/KikoPlayProject/KikoPlay"
# using standalone liblua53.a, remove 'lua53' from depends.
depends=('mpv' 'qhttpengine')
makedepends=('cmake' 'git')
optdepends=('aria2: for downloading')
conflicts=('kikoplay-bin')
source=(
"https://github.com/KikoPlayProject/KikoPlay/archive/refs/tags/${pkgver}.tar.gz"
"git+https://github.com/KikoPlayProject/KikoPlayScript"
)
sha256sums=(
"a8e20f9880fc3418e12f836c28684607e6486d1d2e504e7e829daa5c2344a47f"
SKIP
)
prepare() {
# rename directory to "KikoPlay" to match the KikoPlay.pro file.
# otherwise qmake could not find the KikoPlay.pro file.
[ -d "KikoPlay" ] && rm -rf "KikoPlay"
mv "${srcdir}/KikoPlay-${pkgver}" "KikoPlay"
}
build() {
# use multi job compile
CPU=$(grep 'processor' /proc/cpuinfo | wc -l)
JOBNUMBER=$(($CPU/2))
if [ $JOBNUMBER -lt 1 ]; then
JOBNUMBER=1
fi
# https://github.com/KikoPlayProject/KikoPlay/issues/97#issuecomment-1427057614
# compile a standalone liblua53.a, remove lua53 from depends.
cmake -B"${srcdir}/build-lua53" -S"${srcdir}/KikoPlay/Extension/Lua"
cd "${srcdir}/build-lua53"
make -j$JOBNUMBER
ln -sf "${srcdir}/build-lua53/libmyLua53.a" "${srcdir}/KikoPlay/lib/x64/linux/liblua53.a"
ln -sf "${srcdir}/build-lua53/libmyLua53.a" "${srcdir}/KikoPlay/Extension/Lua/liblua53.a"
# compile kikoplay
mkdir -p "${srcdir}/build"
cd "${srcdir}/build"
qmake "${srcdir}/KikoPlay"
make -j$JOBNUMBER
## only for test, place the "script" under the path of KikoPlay binary
## then we can test the script function without packaging or installing KikoPlay
#mkdir -p "${srcdir}/build/script"
#cp -r "${srcdir}"/KikoPlayScript/* "${srcdir}/build/script"
}
package() {
cd "${srcdir}/KikoPlay"
install -Dm644 KikoPlay使用说明.pdf "${pkgdir}/usr/share/doc/kikoplay/help.pdf"
cd "${srcdir}/build"
make install INSTALL_ROOT="${pkgdir}"
ln -sf KikoPlay "${pkgdir}/usr/bin/kikoplay"
# also package KikoPlayScript, but only exclude the ".git" directory
install -dm755 "${pkgdir}/usr/share/kikoplay/script"
cp -r "${srcdir}"/KikoPlayScript/* "${pkgdir}/usr/share/kikoplay/script"
}
|