summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2025-09-24 23:17:48 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2025-09-24 23:17:48 -0700
commit5dac106c9df1495f66ed9bbdc84949517f889dc9 (patch)
tree59dbff501fa5010f31571b35fbb1759d5368e72b
parentUpdated to 0.10.10 (diff)
downloadendless-sky-master.tar.xz
Updated to 0.10.14HEADmaster
-rw-r--r--PKGBUILD93
-rw-r--r--fix-binary-install.patch11
-rw-r--r--no-compress-manfile.patch20
3 files changed, 80 insertions, 44 deletions
diff --git a/PKGBUILD b/PKGBUILD
index c24ce44..ff228d7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,52 +12,60 @@
# Arch version compiles a second time during package() with incorrect FLAGS
pkgname=endless-sky
-pkgver=0.10.10
+pkgver=0.10.14
pkgrel=1
pkgdesc='A sandbox-style space exploration and combat game'
arch=('x86_64' 'i686' 'aarch64')
url='https://endless-sky.github.io/'
license=(
- 'GPL-3.0-only'
- 'CC-BY-3.0'
- 'CC-BY-4.0'
- 'CC-BY-NC-3.0'
- 'CC-BY-SA-3.0'
- 'CC-BY-SA-4.0'
- 'LicenseRef-public-domain'
+ CC0-1.0
+ CC-BY-2.0
+ CC-BY-3.0
+ CC-BY-4.0
+ CC-BY-SA-3.0
+ CC-BY-SA-4.0
+ GPL-3.0-only
+ LicenseRef-public-domain
+ LicenseRef-Unsplash
)
-options=('lto')
depends=(
- 'glibc'
- 'gcc-libs'
- 'openal'
- 'libpng'
- 'glew'
- 'hicolor-icon-theme'
- 'libjpeg-turbo'
- 'sdl2'
- 'libmad'
- 'util-linux-libs'
- 'libglvnd'
+ glibc
+ gcc-libs
+ openal
+ libpng
+ glew
+ hicolor-icon-theme
+ libjpeg-turbo
+ sdl2
+ libmad
+ util-linux-libs
+ libglvnd
+ minizip
+)
+makedepends=(
+ cmake
+ ninja
)
-makedepends=('scons')
optdepends=(
'endless-sky-high-dpi: high resolution graphics assets'
)
-source=("$pkgname-$pkgver.tar.gz::https://github.com/endless-sky/endless-sky/archive/v${pkgver}.tar.gz")
-b2sums=('be312b00851bc91226a9b5a1462d9587ee38371d0a001afb5e2bad4deb51da3b3e56b03efeaa052afc832c47fb6fe48481dfa43ddf17ff80f4f9cdbcf44d5ce6')
+source=(
+ $pkgname-$pkgver.tar.gz::https://github.com/endless-sky/endless-sky/archive/v${pkgver}.tar.gz
+ fix-binary-install.patch
+ no-compress-manfile.patch
+)
+b2sums=('4a7fa8c95cb898142c4ca07b9ef3cdf24b943120b0846e113501f627aa5221b909df244c13c23127dfa7a155d71a81907ebe229ec1f228017560fd330a2237fb'
+ '551192e7c8b3d90609e1556f91bbb0a5930cd136082051ba0c054b0acb0d77fc3c6aaffc60ab65755345083f5ed5f76013f0cb4abaf720c4cf8da2d213618c7a'
+ 'a4b4aececeea00fcf4a18b8bc4e56ba2049f9d8fc7ff4d533daf7e4d2c05f74c7b05eef4bf89046c57aa90532afd74d3f8228b402e1dec66edd8e7df604a6072')
prepare() {
cd "$pkgname-$pkgver"
# binary is installed to /usr/games instead of /usr/bin
- sed -i 's:games", sky:bin", sky:' SConstruct
+ patch -p1 -i "$srcdir/fix-binary-install.patch"
- # Stop forcing msse3, O3, and single thread flto
- sed \
- -e 's|, "-O3", "-flto"||' \
- -e 's|env.Append(LINKFLAGS = ["-O3", "-flto"])||' \
- -i SConstruct
+ # let package manager (pacman) deal with compression of man files
+ patch -p1 -i "$srcdir/no-compress-manfile.patch"
}
build() {
@@ -67,26 +75,23 @@ build() {
export CXXFLAGS="$CXXFLAGS -O3 -fPIE"
export LDFLAGS="$LDFLAGS,-pie"
- # Fix scons to honor thread count in MAKEFLAGS
- scons "${MAKEFLAGS}"
+ cmake \
+ -B build \
+ -G Ninja \
+ -D CMAKE_BUILD_TYPE=Release \
+ -D CMAKE_INSTALL_PREFIX=/usr \
+ -D BUILD_TESTING=OFF \
+ -D ES_GLES=ON \
+ -D ES_USE_SYSTEM_LIBRARIES=ON \
+ -W no-dev
+ cmake --build build "${MAKEFLAGS}"
}
package() {
cd "$pkgname-$pkgver"
- # For reasons of black magic, adding these flags again prevents a second compilation during this step.
- # This halves compilation time.
- # Also prevents this second compilation from being used in the resulting package with incorrect FLAGS.
- # Madness.
- export CFLAGS="$CFLAGS -O3 -fPIE"
- export CXXFLAGS="$CXXFLAGS -O3 -fPIE"
- export LDFLAGS="$LDFLAGS,-pie"
-
- scons \
- DESTDIR="$pkgdir" \
- PREFIX=/usr \
- install
+ DESTDIR="$pkgdir" cmake --install build
# license
- install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" copyright
+ install -Dm644 "copyright" "$pkgdir/usr/share/licenses/$pkgname"
}
diff --git a/fix-binary-install.patch b/fix-binary-install.patch
new file mode 100644
index 0000000..e666af0
--- /dev/null
+++ b/fix-binary-install.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -274,7 +274,7 @@ elseif(WIN32)
+ install(FILES license.txt DESTINATION .)
+ elseif(UNIX)
+ # Install the binary.
+- install(TARGETS EndlessSky CONFIGURATIONS Release RUNTIME DESTINATION games)
++ install(TARGETS EndlessSky CONFIGURATIONS Release RUNTIME)
+
+ # Install the desktop file.
+ install(FILES io.github.endless_sky.endless_sky.desktop DESTINATION share/applications)
diff --git a/no-compress-manfile.patch b/no-compress-manfile.patch
new file mode 100644
index 0000000..5c0dbee
--- /dev/null
+++ b/no-compress-manfile.patch
@@ -0,0 +1,20 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -289,15 +289,8 @@ elseif(UNIX)
+ RENAME endless-sky.png)
+ endforeach()
+
+- # Gzip and install man file.
+- add_custom_command(
+- OUTPUT endless-sky.6.gz
+- COMMAND gzip -c endless-sky.6 > ${CMAKE_CURRENT_BINARY_DIR}/endless-sky.6.gz
+- DEPENDS endless-sky.6
+- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+- VERBATIM)
+- target_sources(EndlessSky PRIVATE endless-sky.6.gz)
+- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/endless-sky.6.gz DESTINATION share/man/man6)
++ # Install man file.
++ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/endless-sky.6 DESTINATION share/man/man6)
+
+ # Install the resource files.
+ install(DIRECTORY data DESTINATION share/games/endless-sky)