mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-05 20:36:40 +02:00
123 lines
3.1 KiB
Plaintext
123 lines
3.1 KiB
Plaintext
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
|
|
maintainer="Díaz Urbaneja Diego <sodomon2@gmail.com>"
|
|
pkgname=solarus-engine
|
|
_realname=solarus
|
|
pkgver=2.0.3
|
|
pkgrel=1
|
|
_qlementinever=1.4.0
|
|
pkgdesc="Solarus is an open-source adventure 2D game engine written in C++"
|
|
url="https://solarus-games.org/"
|
|
# riscv64: no luajit found
|
|
arch="all !riscv64"
|
|
license="GPL-3.0-only"
|
|
depends="
|
|
libogg
|
|
mesa
|
|
qt6-qttools
|
|
"
|
|
makedepends="
|
|
cmake
|
|
glm-dev
|
|
libmodplug-dev
|
|
libogg-dev
|
|
libvorbis-dev
|
|
luajit-dev
|
|
mesa-dev
|
|
openal-soft-dev
|
|
physfs-dev
|
|
qt6-qtbase-dev
|
|
qt6-qtsvg-dev
|
|
qt6-qttools-dev
|
|
samurai
|
|
sdl2_image-dev
|
|
sdl2_ttf-dev
|
|
sdl2-dev
|
|
"
|
|
# Tests make assumptions about endianness, so disable on s390x
|
|
case "$CARCH" in
|
|
s390x) options="!check" ;;
|
|
esac
|
|
|
|
subpackages="
|
|
$pkgname-dev
|
|
$pkgname-doc
|
|
$_realname-launcher
|
|
$_realname-quest-editor:editor
|
|
"
|
|
|
|
source="$pkgname-$pkgver.tar.gz::https://gitlab.com/solarus-games/solarus/-/archive/v$pkgver/solarus-v$pkgver.tar.gz
|
|
qlementine-$_qlementinever.tar.gz::https://github.com/oclero/qlementine/archive/refs/tags/v$_qlementinever.tar.gz
|
|
fix-gles-glad-conflict.patch.noauto
|
|
"
|
|
builddir="$srcdir/$_realname-v$pkgver"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# Fix GLAD/OpenGL ES header conflicts on ARM
|
|
case "$CARCH" in
|
|
aarch64|armv7|armhf) patch -p1 < "$srcdir"/fix-gles-glad-conflict.patch.noauto;;
|
|
esac
|
|
}
|
|
|
|
build() {
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
cmake --build build
|
|
|
|
# fix launcher and editor build
|
|
cp build/include/solarus/core/config.h include/solarus/core/
|
|
ln -sf ../third_party/glad/include/glad include/
|
|
|
|
cmake -B build-launcher -G Ninja -S launcher \
|
|
-Wno-dev \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DSOLARUS_INCLUDE_DIR=include \
|
|
-DSOLARUS_LIBRARY=build/libsolarus.so
|
|
cmake --build build-launcher
|
|
|
|
cmake -B build-editor -G Ninja -S editor \
|
|
-Wno-dev \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DSOLARUS_INCLUDE_DIR=include \
|
|
-DSOLARUS_DIR=build \
|
|
-DSOLARUS_LIBRARY=build/libsolarus.so \
|
|
-DSOLARUS_USE_LOCAL_QLEMENTINE=ON \
|
|
-DSOLARUS_QLEMENTINE_LOCAL_PATH="$srcdir/qlementine-$_qlementinever"
|
|
cmake --build build-editor
|
|
}
|
|
|
|
check() {
|
|
ctest --test-dir build
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
rm -r "$pkgdir/usr/include/solarus/third_party/"
|
|
}
|
|
|
|
launcher() {
|
|
pkgdesc="GUI Launcher for the Solarus engine."
|
|
depends="$pkgname"
|
|
|
|
cd "$builddir"
|
|
DESTDIR="$subpkgdir" cmake --install build-launcher
|
|
}
|
|
|
|
editor() {
|
|
pkgdesc="Game editor for the Solarus engine"
|
|
depends="$pkgname=$pkgver-r$pkgrel"
|
|
|
|
cd "$builddir"
|
|
DESTDIR="$subpkgdir" cmake --install build-editor
|
|
}
|
|
|
|
sha512sums="
|
|
272d7eff41da5649fbc7237322bb22026a7c3158a4dd64516ea805603f0dd9bed9d8943cb043ae867737e6df7336f6227be9917fb2e7cc8ddd8cf99f6b51b998 solarus-engine-2.0.3.tar.gz
|
|
2b1363c5878c150cd052f4ea149c6b6322cb634218a8347dd8c2758a12cb83aea4efaa77726b5a2a1c857565caa5f452881715c3fbfe904792583e6a01f56967 qlementine-1.4.0.tar.gz
|
|
3f4f6abcc33f475b6113b7809bafe9d1d23b36df778a6e65c511d7fbe038c146c6197eea2f1c3b2263e2d65582915b490304c9ebedf7ad9c9d41f55e40037495 fix-gles-glad-conflict.patch.noauto
|
|
"
|