desktop/nx/PKGBUILD
2014-05-30 14:59:24 +00:00

133 lines
4.5 KiB
Bash

# Maintainer: UtG <utg[dot]chakra.linux[at]gmail[dot]com>
# Contributor from Arch: Andreas Radke <andyrtr@archlinux.org>
pkgbase=nx
pkgname=('libxcomp' 'nxproxy' 'nx-x11' 'nx-xcompext' 'nxagent' 'x2go-agent' 'nx-headers')
pkgver=3.5.0.24
pkgrel=1
arch=('x86_64')
url="http://wiki.x2go.org/"
license=('GPL')
makedepends=('libjpeg-turbo' 'libpng' 'bash' 'perl' 'libxml2' 'fontconfig' # runtime dependencies from subpackages
'xproto' 'freetype2' 'libxaw' 'libxrender' 'libxp' 'libxpm' 'libxdamage' 'libxrandr'
'libxcomposite' 'libxtst' 'xorg-server-utils' 'libfontenc' # makedepends
)
source=(http://code.x2go.org/releases/source/nx-libs/nx-libs-$pkgver-full.tar.gz)
sha1sums=('bd1cdbefe81c9a05dcc2f738639bf4af8f056588')
build() {
cd "${srcdir}/nx-libs-$pkgver"
## debug flags
# export CFLAGS="-march=x86-64 -O1 -g -pipe"
# export CXXFLAGS="-march=x86-64 -O1 -g -pipe"
# honour CFLAGS in X11 build - upstream fixed so far only the other libs
# From xorg-x11-6.9.0-r3.ebuild
pushd "${srcdir}/nx-libs-$pkgver/nx-X11"
HOSTCONF="config/cf/host.def"
echo "#define OptimizedCDebugFlags ${CFLAGS} GccAliasingArgs" >> ${HOSTCONF}
echo "#define OptimizedCplusplusDebugFlags ${CXXFLAGS} GccAliasingArgs" >> ${HOSTCONF}
# Respect LDFLAGS
echo "#define ExtraLoadFlags ${LDFLAGS}" >> ${HOSTCONF}
echo "#define SharedLibraryLoadFlags -shared ${LDFLAGS}" >> ${HOSTCONF}
popd
# fix a broken Makefiles
sed -i "s:-o root -g root ::" nxcompshad/Makefile.in
make \
PREFIX=/usr \
CONFIGURE="./configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --includedir=/usr/include"
# fake install
mkdir $srcdir/fakeinstall
make PREFIX=/usr DESTDIR="$srcdir/fakeinstall" install
}
package_libxcomp() {
pkgdesc="NX X compression library"
depends=('libjpeg-turbo' 'libpng' 'gcc-libs')
install -dm755 ${pkgdir}/usr/lib/nx
cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcomp.so* ${pkgdir}/usr/lib/nx
# symlinks
cd ${pkgdir}/usr/lib/
ln -sv /usr/lib/nx/libXcomp.so{,.3,.3.5.0} .
}
package_nxproxy() {
pkgdesc="NX proxy"
depends=('libxcomp')
install -dm755 ${pkgdir}/usr/{bin,share/man/man1,lib/nx/bin}
cp -a ${srcdir}/fakeinstall/usr/lib/nx/bin/nxproxy ${pkgdir}/usr/lib/nx/bin/nxproxy
cp -a ${srcdir}/fakeinstall/usr/share/man/man1/nxproxy.1 ${pkgdir}/usr/share/man/man1
# the wrapper
cp -a ${srcdir}/fakeinstall/usr/bin/nxproxy ${pkgdir}/usr/bin
}
package_nx-xcompext() {
pkgdesc="Xcompext/Xcompshad library for NX"
depends=('libxcomp' 'nx-x11')
install -dm755 ${pkgdir}/usr/lib/nx
cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcompext.so* ${pkgdir}/usr/lib/nx
cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcompshad.so* ${pkgdir}/usr/lib/nx
# symlinks
cd ${pkgdir}/usr/lib/
ln -sv /usr/lib/nx/libXcompext.so{,.3,.3.5.0} .
ln -sv /usr/lib/nx/libXcompshad.so{,.3,.3.5.0} .
}
package_nx-x11() {
pkgdesc="NX-X11 lib for the NX framework"
depends=('libxcomp' 'fontconfig')
install -dm755 ${pkgdir}/{usr/bin,usr/lib/nx/{X11,bin}}
cp -aR ${srcdir}/fakeinstall/usr/lib/nx/X11/* ${pkgdir}/usr/lib/nx/X11
# nxauth
cp -a ${srcdir}/fakeinstall/usr/lib/nx/bin/nxauth ${pkgdir}/usr/lib/nx/bin
# the wrapper
cp -a ${srcdir}/fakeinstall/usr/bin/nxauth ${pkgdir}/usr/bin
}
package_nxagent() {
pkgdesc="NX X server based on Xnest"
depends=('nx-xcompext' 'libxml2')
install -dm755 ${pkgdir}/usr/{bin,lib/nx/bin,share/nx}
cp -a ${srcdir}/fakeinstall/usr/lib/nx/bin/nxagent ${pkgdir}/usr/lib/nx/bin
# the wrapper
cp -a ${srcdir}/fakeinstall/usr/bin/nxagent ${pkgdir}/usr/bin
# additional files for documentation
cp -a ${srcdir}/fakeinstall/usr/share/nx/SecurityPolicy ${pkgdir}/usr/share/nx
}
package_x2go-agent() {
pkgdesc="Wrapper arround nxagent to use with x2goserver"
depends=('nxagent')
provides=('x2goagent')
install -dm755 ${pkgdir}/usr/{bin,lib/x2go/bin,share/{pixmaps,x2go/versions}}
# this is a nxagent symlink
ln -sv /usr/lib/nx/bin/nxagent ${pkgdir}/usr/lib/x2go/bin/x2goagent
# the wrapper
cp -a ${srcdir}/fakeinstall/usr/bin/x2goagent ${pkgdir}/usr/bin
cp -a ${srcdir}/fakeinstall/usr/share/pixmaps/x2go.xpm ${pkgdir}/usr/share/pixmaps
cp -a ${srcdir}/fakeinstall/usr/share/x2go/rgb ${pkgdir}/usr/share/x2go
cp -a ${srcdir}/fakeinstall/usr/share/x2go/versions/VERSION.x2goagent ${pkgdir}/usr/share/x2go/versions
}
package_nx-headers() {
pkgdesc="NX headers"
install -dm755 ${pkgdir}/usr/include/nx
cp -aR ${srcdir}/fakeinstall/usr/include/nx/* ${pkgdir}/usr/include/nx
}