summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 75f3fd6459dca11869b7a9a2c22a487a3e2dfde1 (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
# Maintainer: PitBall

pkgname=ryzom-client
pkgver=0.12.0.r7157
pkgrel=1
pkgdesc="Ryzom is a Free to Play MMORPG .This version is for playing on an official server"
arch=('i686' 'x86_64')
url="http://www.ryzom.com/"
license=('AGPL3')
depends=('ryzom-data' 'curl' 'freealut' 'libvorbis' 'libjpeg' 'giflib' 'rrdtool'
         'boost' 'lua53bind' 'libsquish' 'libxrandr' 'libxcursor' 'hicolor-icon-theme')
conflicts=('ryzom-client-latest-hg' 'ryzom-client-hg')
makedepends=('mercurial' 'cpptest' 'cmake' 'bison' 'mesa')
provides=('libnel' 'ryzom' 'ryzomcore')
_hg_name='ryzomcore'
install=install                                     #branch=compatibility
source=( "hg+https://bitbucket.org/ryzom/${_hg_name}#branch=compatibility-develop"
         'ryzom.sh' 'findlua53bind.patch')
md5sums=('SKIP' 'a5ca7dfae7b9073f78cd1b0b7380755f' 'b5b01746543648f646421f190759a886')


pkgver() {
  cd "$_hg_name"
  printf "%s.%s.%s.r%s" \
  "$(grep -o -P "NL_VERSION_MAJOR [0-9]+" code/CMakeLists.txt | \
                  awk '{print $2}' | head -n 1)" \
  "$(grep -o -P "NL_VERSION_MINOR [0-9]+" code/CMakeLists.txt | \
                  awk '{print $2}' | head -n 1)" \
  "$(grep -o -P "NL_VERSION_PATCH [0-9]+" code/CMakeLists.txt | \
                  awk '{print $2}' | head -n 1)" \
  "$(hg identify -n)"
}

prepare() {

    mkdir -p $srcdir/$_hg_name/build
    cd $srcdir/$_hg_name

    patch -Np0 -i $srcdir/findlua53bind.patch
    sed '/o_xml.h/i#include <libxml/tree.h>' -i \
         code/nel/include/nel/logic/logic_state.h 

} 

build() {

    cd $srcdir/$_hg_name

    cmake -Hcode -Bbuild -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release \
    -DWITH_RYZOM_SERVER=OFF -DWITH_RYZOM_CLIENT=ON -DWITH_PCH=OFF \
    -DWITH_NEL_TOOLS=OFF -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=OFF \
    -DWITH_LUA53=ON -DWITH_LUA51=OFF -DWITH_LUA52=OFF \
    -DWITH_RYZOM_TOOLS=OFF -DCMAKE_INSTALL_PREFIX=/usr \
    -DRYZOM_ETC_PREFIX=/etc/ryzom -DRYZOM_SHARE_PREFIX=/usr/share/ryzom \
    -DRYZOM_BIN_PREFIX=/usr/bin -DRYZOM_GAMES_PREFIX=/usr/bin

    cmake --build build

}

package() {
    cd "$srcdir/$_hg_name/build"
    make DESTDIR="$pkgdir/" install
    sed 's/\/usr\/bin\/ryzom_client/ryzom/' \
    -i ${pkgdir}/usr/share/applications/ryzom_client.desktop
    install -Dm755  ${srcdir}/ryzom.sh  ${pkgdir}/usr/bin/ryzom
    #correct config file for playing on an official server
    sed -r -e 's|^(PatchServer\s*=\s*).*|\1"";|' \
           -e '/PatchServer/aPatchWanted = 0;' \
           -e 's|^(PatchletUrl\s*=\s*).*|\1"";|' \
           -i ${pkgdir}/etc/ryzom/client_default.cfg
}