summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: 708f532f2d23f04085dd053b6286481c3cd1accd (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.7.0
pkgrel=1
_offlinever=1.7
_ashesver=1.1.0
_orcsver=1.1.7
_cultsver=1.0.9
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=(premake4 zip unzip)
options=(emptydirs)
source=("${url}dl/t-engine/t-engine4-src-${pkgver}.tar.bz2"
  ashes-urhrok_${_ashesver}.teaac
  orcs_${_orcsver}.teaac
  cults_${_cultsver}.teaac
  offline-donator_${_offlinever}.patch
  sdl2-path-fix.patch
  O3-support.patch
  tome4
  tome4.desktop)
conflicts=('tome4-beta' 'tome4-git' 'tome4-nomusic')
b2sums=('7eb525879836b5127e9b5eb56dfccf409cd2f1ed2ee5a7e45b819f1d39ca961c1bdb68460ff72beb0e4d0255d812b46314b41d440ae7a9e611852d178ecbaa35'
        '126f4ec4037e6c866789eef5952c48182d45f4f335c223084c747257a6ff81b208b7635af5b73275dd0665b688ac090b137c11714e9bead36f1a7505f6407934'
        '465353d7df5e7edaf56367fbee7c77c649b13a2f18c25c444e660f2be56efd3808cafa98f876046ec1f048607a38cb59e6b18e7083a236df46db4fa191e7780d'
        '9542c57215860628e55485728fc98129857e9231305742e0e31c03ea20fc1947f5100b6aee27191367b9f66e823c3eb75d2fe16e4a2258e012087bc38a423bb2'
        'ac66d8cd615d8f5cf9cf8dce140670ebf7b30fdf2d0b84b3d66160ffd740c29324b81dfb589435802308fdcdc5d357f9b09fdab28c43e682e5317acebeb9d49d'
        '200b22bee34c8afce01210cd13cda13997514461249f934b38be48ab346e8df13002379a44c99ebc2d5d5fbf7cf21c07961e202f396a5eb1b9284b0611165e2b'
        '54e069a67db8911f003e60da3496455bd21466a3dc6d4253fa14e513cfc4eee6dbe3d3165fb93aeb9bd097f26b2035d1c60cfa171020325d695af1392300faa6'
        'd32a8d25c7cdd7d13d530272e880381153fa86a5e99135481559eb81b0c1188dec2aabc1ef7a024b3791da17e2e9e1112a267261b43d49043dc81fb5622645cb'
        '763a8a8a27d8bb94f895489fe2f622f72eee3c7116ab8507235197ba9e3ab996aa2a16ce5f726eab47d361d35b044654b91bdca5742678417116ef18dcb07989')


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

  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"
  patch -p1 -i "${srcdir}/offline-donator_${_offlinever}.patch"
  patch -p1 -i "${srcdir}/sdl2-path-fix.patch"
  patch -p1 -i "${srcdir}/O3-support.patch"

}

###############################################################################
# 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}/"
}