blob: cb01b730c63c027d803d8603d84322aed03ee6af (
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
|
# Maintainer: Timur Bagautdinov <mr.bagautdinov14 at gmail dot com>
pkgname="voxelcore"
pkgver=0.31.4
pkgrel=1
pkgdesc="Minecraft-like game engine in C++ with OpenGL"
url="https://github.com/MihailRis/$pkgname"
license=("custom")
arch=('x86_64')
options=("lto" "strip" "!debug")
depends=("gcc-libs" "bash" "glibc" "hicolor-icon-theme" "libglvnd" "zlib" "glfw" "glew" "glm" "libpng" "libvorbis" "openal" "luajit" "curl" "freetype2")
makedepends=("cmake" "sed" "entt")
source=(
"$url/archive/refs/tags/v$pkgver.zip"
"voxelcore.sh"
"patch-01.patch"
)
sha256sums=("9327075d3c0195b292cd108a1e1c8b312a1b7c865d6bd6255d443b8033c1af9c"
"9766b3fcdd35932709d9f8f7bd8c322d139f830440eb649bdff9a45cc14ef02e"
"ac8709370b77c1a1f3aed19c387600394d60d3eab41858772195d5e0c259ec94")
prepare() {
cd "$srcdir/$pkgname-$pkgver"
# Patch for 0.31.4
patch -p1 -i "$srcdir/patch-01.patch"
# Desktop file patching to run custom launch script that installed in system (check voxelcore.sh for more details)
sed -i 's|Exec=VoxelEngine|Exec=voxelcore|' "$srcdir/$pkgname-$pkgver/dev/VoxelCore.desktop"
}
build() {
cd "$srcdir/$pkgname-$pkgver"
mkdir -p build
cmake -DCMAKE_BUILD_TYPE=Release -S . -B ./build
cmake --build build -j$(nproc)
}
check() {
cd "$srcdir/$pkgname-$pkgver/build/vctest"
"$srcdir/$pkgname-$pkgver/build/vctest/vctest" \
--exe "$srcdir/$pkgname-$pkgver/build/VoxelEngine" \
--res "$srcdir/$pkgname-$pkgver/build/res" \
--tests "$srcdir/$pkgname-$pkgver/dev/tests"
}
package() {
install -d "$pkgdir/usr/bin/"
install -d "$pkgdir/usr/share/VoxelCore/res"
install -d "$pkgdir/usr/share/applications/"
install -d "$pkgdir/usr/share/icons/hicolor/128x128/apps/"
# Icon
install -m 644 "$srcdir/$pkgname-$pkgver/dev/VoxelCore.png" "$pkgdir/usr/share/icons/hicolor/128x128/apps/VoxelCore.png"
# Game binary & launcher
install -m 755 "$srcdir/$pkgname-$pkgver/build/VoxelEngine" "$pkgdir/usr/bin/VoxelEngine"
install -m 755 "$srcdir/voxelcore.sh" "$pkgdir/usr/bin/voxelcore"
# Game res
cp -r "$srcdir/$pkgname-$pkgver/build/res/"* "$pkgdir/usr/share/VoxelCore/res"
# Desktop file
install -m 644 "$srcdir/$pkgname-$pkgver/dev/VoxelCore.desktop" "$pkgdir/usr/share/applications/VoxelCore.desktop"
}
|