summaryrefslogtreecommitdiff
path: root/pcr/ryzom-hg
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/ryzom-hg')
-rw-r--r--pcr/ryzom-hg/PKGBUILD116
-rw-r--r--pcr/ryzom-hg/ryzom.desktop11
-rw-r--r--pcr/ryzom-hg/ryzom.sh9
3 files changed, 136 insertions, 0 deletions
diff --git a/pcr/ryzom-hg/PKGBUILD b/pcr/ryzom-hg/PKGBUILD
new file mode 100644
index 000000000..45d32f288
--- /dev/null
+++ b/pcr/ryzom-hg/PKGBUILD
@@ -0,0 +1,116 @@
+# Maintainer:Bjoern Bidar <theodorstormgrade@gmail.com
+# Maintainer:Jorge Araya Navarro <jorgean@lavabit.com>
+#_gui_toolkit=qt # qt or gtk
+_build_server=false # set true to build server (default:false)
+_build_client=true # set false to don't build client (default:true)
+_CMAKE_COMMON_ARGS=('-DWITH_STATIC=OFF' '-DWITH_NEL_TOOLS=OFF' '-DWITH_NEL_TESTS=OFF' '-DWITH_LUA51=ON' '-DWITH_NEL_SAMPLES=OFF' '-DWITH_RYZOM_TOOLS=OFF'.) # cmake arguments for server and client
+_CMAKE_SERVER_ARGS=('-DWITH_RYZOM_SERVER=ON' '-DWITH_RYZOM_CLIENT=OFF' '-DWITH_DRIVER_OPENGL=OFF' '-DWITH_DRIVER_OPENAL=OFF' ) # cmake args for building server
+_CMAKE_CLIENT_ARGS=( '-DWITH_RYZOM_SERVER=OFF' '-DWITH_RYZOM_CLIENT=ON' ) # cmake args for building client
+
+if [ $_build_client = true ] ; then
+ true && pkgname=( 'ryzom-client-hg' )
+fi
+
+if [ $_build_server = true ] ; then
+ true && pkgname=( 'ryzom-client-hg' 'ryzom-server-hg')
+fi
+
+
+case $_gui_toolkit in
+ qt) _CMAKE_COMMON_ARGS=( ${_CMAKE_COMMON_ARGS_ARGS[*]} '-DWITH_QT=ON' ) ;;
+ gtk) _CMAKE_COMMON_ARGS=( ${_CMAKE_COMMON_ARGS_ARGS[*]} '-DWITH_GTK=ON' ) ;;
+esac
+
+
+_hg_root='https://bitbucket.org/ryzom/ryzomcore'
+_hg_name='ryzomcore'
+
+prepare() {
+ if [ -d "$_hg_name" ] ; then # fetch sources
+ cd "$_hg_name"
+ hg pull && hg update
+ cd ..
+ else
+ hg clone "$_hg_root"
+ fi
+
+ msg2 "hg clone done or server timeout"
+}
+build() {
+ cd $_hg_name
+
+ if [ $_build_client = true ] ; then
+
+ mkdir -p "$srcdir/build-client"
+ cd "$srcdir/build-client"
+ msg "client is $_build_client, building client"
+ cmake -b "$srcdir/$_hg_name/code" ${_CMAKE_COMMON_ARGS_ARGS[*]} ${_CMAKE_CLIENT_ARGS[*]} -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
+ msg "Starting make, to build client"
+ make
+
+ fi
+
+ if [ $_build_server = true ] ; then
+ mkdir -p "$srcdir/build-server"
+ cd "$srcdir/build-server"
+ msg "client is $_build_server, building server"
+ cmake -b "$srcdir/$_hg_name/code" ${_CMAKE_COMMON_ARGS_ARGS[*]} ${_CMAKE_SERVER_ARGS[*]} -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
+ msg "Starting make, to build server"
+ make
+
+ fi
+
+}
+if [ $_build_client = true ] ; then
+
+ package_ryzom-client-hg() {
+ pkgdesc="Ryzom is a Free to Play MMORPG . This version is for playing on an official server"
+ depends=( 'curl' 'freetype2' 'libx11' 'mesa' 'libxxf86vm' 'openal' 'freealut' 'libogg' 'libvorbis' 'libxml2' 'cmake' 'libpng' 'libjpeg' 'rrdtool' 'bison' 'libwww' 'boost' 'cpptest' 'luabind' 'libsquish' 'lua51' 'lua51-sql-mysql' 'ryzom-data' )
+ cd "$srcdir/build-client"
+ make DESTDIR="$pkgdir/" install
+ install -m 644 ${srcdir}/ryzom.desktop ${pkgdir}/usr/share/applications
+ sed -ie 's/\/usr\/bin\/ryzom_client/ryzom/' ${pkgdir}/usr/share/applications/ryzom.desktop # replace ryzom_client with our script
+ cp ${srcdir}/ryzom.sh ${pkgdir}/usr/bin/ryzom
+ chmod +x ${pkgdir}/usr/bin/ryzom
+ mkdir -p ${pkgdir}/usr/bin
+
+ }
+
+fi
+
+if [ $_build_server = true ] ; then
+
+ package_ryzom-server-hg() {
+ pkgdesc="Ryzom is a Free to Play MMORPG . This is the version to run a server"
+ cd "$srcdir/build-server"
+ make DESTDIR="$pkgdir/" install
+ # install -m 644 ${srcdir}/ryzom.desktop ${pkgdir}/usr/share/applications
+ # sed -ie 's/\/usr\/bin\/ryzom_client/ryzom/' ${pkgdir}/usr/share/applications/ryzom.desktop # replace ryzom_client with our script
+ # cp ${srcdir}/ryzom.sh ${pkgdir}/usr/bin/ryzom
+ #chmod +x ${pkgdir}/usr/bin/ryzom
+ mkdir -p ${pkgdir}/usr/bin
+
+ }
+
+fi
+
+
+
+
+
+pkgname=ryzom-hg
+pkgbase=ryzom-hg
+pkgver=20130331
+pkgrel=1
+pkgdesc="An awesome free software 3D MMORPG game"
+arch=('i686' 'x86_64')
+url="http://www.ryzom.com/"
+license=('AGPL3')
+depends=('curl' 'freetype2' 'libx11' 'mesa' 'libxxf86vm' 'openal' 'freealut' 'libogg' 'libvorbis' 'libxml2' 'libpng' 'libjpeg' 'rrdtool' 'libwww' 'boost' 'luabind' 'libsquish' 'lua51' 'lua51-sql-mysql')
+conflicts=('ryzom-client-latest-hg')
+groups=('ryzom')
+makedepends=('mercurial' 'cpptest' 'cmake' 'bison')
+provides=('ryzom')
+source=( 'ryzom.sh' 'ryzom.desktop' )
+md5sums=('a5ca7dfae7b9073f78cd1b0b7380755f'
+ '71d5136d40ec4e76c2ac2b0c9e506aef')
diff --git a/pcr/ryzom-hg/ryzom.desktop b/pcr/ryzom-hg/ryzom.desktop
new file mode 100644
index 000000000..d90063593
--- /dev/null
+++ b/pcr/ryzom-hg/ryzom.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Name=Ryzom
+Type=Application
+GenericName=ryzom
+Comment=Ryzom
+Exec=/usr/bin/ryzom
+Icon=/usr/share/ryzom/data/ryzom.png
+Terminal=false
+Hidden=false
+Categories=Game;RolePlaying;
diff --git a/pcr/ryzom-hg/ryzom.sh b/pcr/ryzom-hg/ryzom.sh
new file mode 100644
index 000000000..e3cff2c64
--- /dev/null
+++ b/pcr/ryzom-hg/ryzom.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+if groups | grep games > /dev/null 2>&1 ; then
+ ryzom_sync
+ exec ryzom_client
+
+else
+ echo "you need to be in games group to run ryzom"
+ exit 1
+fi