summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: 2698d6b71838d8aa61ceadad64943f4a65071267 (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.7
pkgrel=1
_offlinever=1.6
_ashesver=1.0.11
_orcsver=1.1.6
_cultsver=1.0.8
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"
  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=('eccd57b1dc252ce32f8d2af5677428565e55fe88d6ca48b51f9aa0392d8eb2da198561c3b89e925bd5ddd2fc7178f6ee371da144329c5e5b37309e4b99999d9b'
        '2b796a881bb71cea72399ff2b74c82e24ae8a40f98c5c5a09014c2ef6cf15b2c0a393c728e95e1579b5a427864ee89212f5083b4e7b3aac4f2316a30eda843ca'
        'e678df54e682af7a5b94de524db637cd84ecdf8e183d2ca011e01447d7396d480148b5fbcff14d088e72852270d234aa5c84de20ca747d076ce49bd8b6ae0faa'
        '58bba5cf12958249aeb5831545b3c2e07b87b9ce799c9fa328d871a25efbda301d836a840d7e54833800bfeb45ad4232263325b5af68519a924cd58f92c227aa'
        '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}/"
}