summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: 8ec806050b7923eaa8ae6a40f3e6974b869d8f9e (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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer (AUR): Harms <thotro at lyse dot net>
# Contributor (AUR): Pascal Grossé <pascal.grosse@gmail.com>

# # I maintain this because:
# AUR version uses /opt
# AUR version uses http
# AUR version uses debug build
# AUR version does not use -O3
# AUR version lacks offline patch
# AUR version lacks DLC

pkgname=tome4
pkgver=1.6.5
pkgrel=1
_offlinever=1.6
_ashesver=1.0.8
_orcsver=1.1.4
_cultsver=1.0.6
pkgdesc="An open-source, single-player, role-playing roguelike game set in the world of Eyal."
pkgdesc+="Includes DLC and offline patch."
arch=('i686' 'x86_64' 'aarch64')
url="https://te4.org/"
license=('custom' 'GPL3')
depends=(glu openal libvorbis sdl2_ttf sdl2_image)
makedepends=(premake zip unzip)
options=(emptydirs)
source=("${url}dl/t-engine/t-engine4-src-${pkgver}.tar.bz2"
  sdl2-path-fix.patch
  O3-support.patch
  offline-donator_${_offlinever}.patch
  ashes-urhrok_${_ashesver}.teaac
  orcs_${_orcsver}.teaac
  cults_${_cultsver}.teaac
  tome4
  tome4.desktop)
conflicts=('tome4-beta' 'tome4-git' 'tome4-nomusic')
sha512sums=('2fb5e2a261c0f66dc687962471b7ced4c271c083f7333b35738f071409cd8e5125905396f8cfbf37bdaead74d75544164efd3970d17b131d05e6bc38e10be9a7'
            '9d4533581e6dea76a68ed8feb5aded7d02562ce3303c5c8a59f041a2b52f49bb3aa215d3f2ba3e31af85c62655ba1494d1e0f626bcbb618a90f053fd1f364a48'
            '790dce2ee4f42f0bdb536eed464f2f9849039852249deb1de06f2e71e2938cb70380ad6b617900b4b159f60060a4163a37583e3c1639578b090cc77621243477'
            '9f19607d542bfed80570875f22211e9cda3576c62e1cdd426576b8d3832e7b9af2e86135ee0c25942772fbe1f10bdb63d62cd37a59f31a424518cdfd9097d536'
            'bee86ba7013bdeeb9d58a1d851222c704c4ce82ffa1388f1c50b0f496522ec5c8f066f1ea97b5009e3456dcdc39e8c823bd18f536d92f7f33b53bc006ac95485'
            'b0c57b49f08344fc366c0c0fffcdf4e0427e6164e5a10148509f51c352a7c9f2a0899aa09a70823a28d948387e33550b5f5e5b9cc1928a2d884dd5da677a33bf'
            '9112512db028419c5480814cf3bcae155c2d4cfdc82fa56612f644726fdbfcb2eb846475f0bcd0d70e6dded3c1a23de8b4c9c3407cbdf4d7f3a0746bff776918'
            '521e99b07082d6379606541f625f68fa666610e1c3f27e5e4803cc44bc16e60f28824792d1b13e477a08176f609288e693be3d92ba60cb4fea343f11854fe466'
            '94ed400247d4137fc4f6e770e724a47a028a2fafff15c38ba952d828db4d3890e13ae2c51b8cf9e070b545ba07e5c183b44c15886480b1e06d3c94a2826e5c73')


###############################################################################
# 1. Patch the game.
###############################################################################
prepare() {
  cd t-engine4-src-${pkgver}

  patch -p1 -i "${srcdir}/sdl2-path-fix.patch"
  patch -p1 -i "${srcdir}/O3-support.patch"
  patch -p1 -i "${srcdir}/offline-donator_${_offlinever}.patch"
  cp "${srcdir}/ashes-urhrok_${_ashesver}.teaac" "${srcdir}/t-engine4-src-${pkgver}/game/addons/ashes-urhrok.teaac"
  cp "${srcdir}/orcs_${_orcsver}.teaac" "${srcdir}/t-engine4-src-${pkgver}/game/addons/orcs.teaac"
  cp "${srcdir}/cults_${_cultsver}.teaac" "${srcdir}/t-engine4-src-${pkgver}/game/addons/cults.teaac"

}

###############################################################################
# 2. Build the game engine from source.
###############################################################################
build() {
  cd t-engine4-src-${pkgver}

  premake4 gmake
  # lto breaks compiling
    export CFLAGS="$CFLAGS -O3 -fstack-protector-all -fPIE"
    export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -fPIE"
    export LDFLAGS="$LDFLAGS,-pie"
  make config=release
}

###############################################################################
# 3. Create the package. Copy all that shall be installed into the package dir.
###############################################################################
package() {
  # Extract and install the icon.
  unzip -oj -qq "${srcdir}/t-engine4-src-${pkgver}/game/engines/te4-${pkgver}.teae" "data/gfx/te4-icon.png" -d "${srcdir}"
  install -Dm644 "${srcdir}/te4-icon.png" "${pkgdir}/usr/share/pixmaps/${pkgname}.png"
  
  # Install the documents.
  install -Dm644 "${srcdir}/t-engine4-src-${pkgver}/CONTRIBUTING" "${pkgdir}/usr/share/doc/${pkgname}/CONTRIBUTING"
  install -Dm644 "${srcdir}/t-engine4-src-${pkgver}/CREDITS" "${pkgdir}/usr/share/doc/${pkgname}/CREDITS"
  
  # Install the custom license into standard location.
  install -Dm644 "${srcdir}/t-engine4-src-${pkgver}/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
  install -Dm644 "${srcdir}/t-engine4-src-${pkgver}/COPYING-MEDIA" "${pkgdir}/usr/share/licenses/${pkgname}/COPYING-MEDIA"

  # Install the game executable, and the launcher.
  install -Dm755 "${srcdir}/t-engine4-src-${pkgver}/t-engine" "${pkgdir}/usr/lib/${pkgname}/t-engine"
  install -Dm755 "${srcdir}/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
  install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
  
  # Install the game data.
  cp -r "${srcdir}/t-engine4-src-${pkgver}/bootstrap" "${pkgdir}/usr/lib/${pkgname}/"
  cp -r "${srcdir}/t-engine4-src-${pkgver}/game" "${pkgdir}/usr/lib/${pkgname}/"
}