summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: c9007d9bbfe327e3714b4292708271cf3347ed2a (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
# Maintainer: Graham Edgecombe <graham@grahamedgecombe.com>
pkgname=openrct2
pkgver=0.0.3
pkgrel=1
pkgdesc='Open source clone of RollerCoaster Tycoon 2'
arch=('i686' 'x86_64')
url='https://github.com/OpenRCT2/OpenRCT2'
license=('GPL3')
depends=('gtk-update-icon-cache' 'desktop-file-utils')
makedepends=('git' 'cmake')
options=('!buildflags')
install=openrct2.install
source=('https://github.com/OpenRCT2/OpenRCT2/archive/v0.0.3.tar.gz'
        'https://openrct.net/launcher/libs/orctlibs.zip'
        'openrct2'
        'openrct2.desktop')
sha256sums=('50a55a2ab48a4df26a32d17ee9c72e7310eba6537ed839ee81de2220afe79d80'
            '0a7b5ea46e9cb4b19000b69690eae0b75929752f7db192c78bd7ffb61d696835'
            '2cead106464f257d64c74333280ee6bf4056167cc69840371e81a77e64858989'
            'b916d4a9f56af82693ba21f43e09ababe9f132fd7c3b78efa1b4387ee1bc3a4d')

if [ "$CARCH" = "i686" ]; then
  depends+=('sdl2' 'sdl2_ttf' 'curl' 'jansson' 'speexdsp')
else
  depends+=('lib32-sdl2' 'lib32-sdl2_ttf' 'lib32-curl' 'lib32-jansson'
            'lib32-speexdsp')
  makedepends+=('gcc-multilib')
fi

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

  # Copy local libraries into lib.
  if [ ! -d lib ]; then
    cp -r "$srcdir/local" lib
  fi
}

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

  cmake -DCMAKE_BUILD_TYPE=Debug .
  make

  # openrct2 sprite build segfaults even if it finishes successfully, so we
  # ignore its return code.
  ./openrct2 sprite build data/g2.dat resources/g2 || true
}

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

  # Standard OpenRCT2 distribution files.
  install -Dm755 openrct2 "$pkgdir/usr/share/openrct2/openrct2"
  install -Dm644 openrct2.exe "$pkgdir/usr/share/openrct2/openrct2.exe"

  install -Dm644 data/g2.dat "$pkgdir/usr/share/openrct2/data/g2.dat"

  install -dm755 "$pkgdir/usr/share/openrct2/data/language"
  install -m644 data/language/* "$pkgdir/usr/share/openrct2/data/language/"

  install -dm755 "$pkgdir/usr/share/openrct2/data/title/openrct2"
  install -m644 data/title/openrct2/* "$pkgdir/usr/share/openrct2/data/title/openrct2"

  install -dm755 "$pkgdir/usr/share/openrct2/data/title/rct2"
  install -m644 data/title/rct2/* "$pkgdir/usr/share/openrct2/data/title/rct2"

  # Use root certificates from ArchLinux instead of the ones bundled with
  # OpenRCT2.
  ln -sf /etc/ssl/certs/ca-certificates.crt "$pkgdir/usr/share/openrct2/curl-ca-bundle.crt"

  # ArchLinux-specific stuff (launcher, .desktop file and icon).
  install -Dm755 "$srcdir/openrct2" "$pkgdir/usr/bin/openrct2"
  install -Dm644 "$srcdir/openrct2.desktop" "$pkgdir/usr/share/applications/openrct2.desktop"
  install -Dm644 resources/logo/icon_flag.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/openrct2.svg"
}