summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: fcd2d78e48f67edd8d5093da380d02a30ef09c8e (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
# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer (AUR): Graham Edgecombe <graham@grahamedgecombe.com>

# # I maintain this because:
# AUR version lacks additional optimization and hardening flags
# AUR version builds with discord

pkgname=openrct2
pkgver=0.2.4
_titlepkgver=0.1.2c
_objectpkgver=1.0.13
_replayspkgver=0.0.8
pkgrel=3
pkgdesc='Open source re-implementation of Roller Coaster Tycoon 2 (Original copy required)'
arch=('i686' 'x86_64' 'armv7h' 'aarch64')
url='https://openrct2.io'
license=('GPL3')
depends=('hicolor-icon-theme' 'sdl2' 'jansson' 'speexdsp' 'fontconfig'
         'libpng' 'libzip' 'icu')
makedepends=('cmake')
optdepends=('zenity: System dialog box support (GNOME/GTK)'
            'kdialog: System dialog box support (KDE)'
            'alsa-lib: ALSA audio driver'
            'libpulse: PulseAudio audio driver')
install=openrct2.install
source=($pkgname-$pkgver.tar.gz::https://github.com/OpenRCT2/OpenRCT2/archive/v$pkgver.tar.gz
        $pkgname-title-sequences-$_titlepkgver.tar.gz::https://github.com/OpenRCT2/title-sequences/archive/v$_titlepkgver/title-sequences.tar.gz
        $pkgname-objects-$_objectpkgver.tar.gz::https://github.com/OpenRCT2/objects/archive/v$_objectpkgver/objects.tar.gz
        $pkgname-replays-$_replayspkgver.tar.gz::https://github.com/OpenRCT2/replays/archive/v$_replayspkgver/replays.tar.gz
        )
b2sums=('7860746d1705804682756097ff37d4584d0ebb20c450c08b88134795e9f3c375dfb888a67302f530cd55700eaa5cd13149c365c30a5d267d382b39225f06d210'
        '3f200f0f93539c2e6aa84cd2fe752e023f2ced09b9936186a66750eb3be54ff90105b389c19c9c255bf1375c102f0673688501c3552cad84493667c407118f5d'
        'c1ac8b8e59668a1bbf0b94b9e4da202420230e2eec802c6b08142d38cf8e388e2b715b1d7db5bdd28adaf17f65a45ffc7bc2b95c7e0263d6ea2a52ee7a1cdf54'
        '6d4d1d05d3a23023cd3d2e10a04c1d19c3b115e2da54cca44435f9b67c69634e7573b4b1da22190f27da2fea1d0e736cf58028c89a676e856c76d248d7a28b9a')

prepare() {
  cd "$srcdir/OpenRCT2-$pkgver"
  mkdir data/title
  cp -r $srcdir/*.parkseq data/title
  mkdir data/object
  cp -r $srcdir/official data/object
  cp -r $srcdir/rct1 data/object
  cp -r $srcdir/rct2 data/object
  cp -r $srcdir/rct2tt data/object
  cp -r $srcdir/rct2ww data/object
  mkdir -p testdata/replays
  cp -r $srcdir/*.sv6r testdata/replays
}

build() {
  cd "$srcdir/OpenRCT2-$pkgver"

  # lto breaks compiling
  export CFLAGS="$CFLAGS -O3 -fstack-protector-all -fPIE"
  export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -fPIE"
  export LDFLAGS="$LDFLAGS,-pie"

  mkdir -p build
  cd build
  cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo    \
        -DCMAKE_INSTALL_PREFIX=/usr          \
        -DCMAKE_INSTALL_LIBDIR=/usr/lib      \
        -DDOWNLOAD_TITLE_SEQUENCES=OFF \
        -DDOWNLOAD_OBJECTS=OFF         \
        -DDOWNLOAD_REPLAYS=OFF         \
        -DDISABLE_HTTP_TWITCH=ON       \
        -DDISABLE_NETWORK=ON           \
        ..
  make all g2
}

package() {
  cd "$srcdir/OpenRCT2-$pkgver/build"

  make DESTDIR="$pkgdir" install

  rm -rf "$pkgdir/usr/lib"
  rm -rf "$pkgdir/usr/include"
}