Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37417673
en ru br
ALT Linux repos
S:3.0.1-alt1

Group :: Graphics
RPM: virtualgl

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define _unpackaged_files_terminate_build 1
Name: virtualgl
Version: 3.0.1
Release: alt1

%define vgl_name vgl

Summary: Runs remote OpenGL applications with full 3D hardware acceleration
License: LGPLv2.1
Group: Graphics

Url: http://virtualgl.org
#Git: https://github.com/VirtualGL/virtualgl

Source: %name-%version.tar
Source1: vglserver
Source2: README.ALT-ru_RU.UTF-8

Patch1: %name-2.5.90-alt-remove-solaris-stuff.patch
Patch2: %name-2.5.2-alt-xauth.patch
Patch3: %name-3.0-alt-nettest.patch
Patch4: %name-2.6.3-alt-fix-linkage.patch
# patch 5: modified RedHat libexec path patch
Patch5: %name-2.5.2-alt-libexec-path-fix.patch
Patch6: %name-3.0.1-upstream-Fix-compilation-errors-with-libX11-1.8.x.patch

BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: libXtst-devel
BuildRequires: libXv-devel
BuildRequires: libfltk-devel
BuildRequires: libssl-devel
BuildRequires: libturbojpeg-devel
BuildRequires: boost-devel-headers
BuildRequires: opencl-headers
BuildRequires: ocl-icd-devel
BuildRequires: libxcbutil-keysyms-devel

Provides: VirtualGL = %EVR %name = %EVR
Obsoletes: VirtualGL <= %EVR

%description
With VirtualGL, the OpenGL commands and 3D data are redirected to a 3D
graphics accelerator on the application server, and only the rendered
3D images are sent to the client machine. VirtualGL thus "virtualizes"
3D graphics hardware, allowing it to be co-located in the "cold room"
with compute and storage resources.

%package devel
Summary: VirtualGL development files
Group: Development/Other
Requires: %name = %EVR
BuildArch: noarch
Provides: VirtualGL-devel = %EVR %name-devel = %EVR
Obsoletes: VirtualGL-devel <= %EVR

%description devel
With VirtualGL, the OpenGL commands and 3D data are redirected to a 3D
graphics accelerator on the application server, and only the rendered
3D images are sent to the client machine. VirtualGL thus "virtualizes"
3D graphics hardware, allowing it to be co-located in the "cold room"
with compute and storage resources.

This package contains VirtualGL development libraries.

%prep
%setup

%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1

sed -i -e 's,"glx.h",<GL/glx.h>,' server/*.[hc]*
sed -i -e 's,"glxext.h",<GL/glxext.h>,' server/*.[hc]*
# Remove bundled libraries
rm -r server/fltk
rm doc/LICENSE-*.txt

%build
%cmake \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX:PATH=%_usr \
-DVGL_LIBDIR:PATH=%_libdir \
-DVGL_FAKELIBDIR:PATH=%_libdir/%vgl_name \
-DTJPEG_INCLUDE_DIR=/usr/include \
-DTJPEG_LIBRARY:PATH=turbojpeg \
-DCMAKE_INSTALL_DOCDIR=%_defaultdocdir/%name-%version \
-DX11_XTest_INCLUDE_PATH=%_includedir \
-DVGL_BUILDSTATIC=OFF \
-DVGL_USESSL=ON \
-DVGL_SYSTEMGLX=1 \
-DVGL_SYSTEMFLTK=1 \
-DVGL_FAKEOPENCL=1 \
-DVGL_FAKEXCB=1 ..
%cmake_build

%install
mkdir -p %buildroot%_libdir/%vgl_name
%cmake_install
mkdir -p %buildroot%_sbindir
install -pD -m 755 %SOURCE1 %buildroot%_sbindir
mkdir -p %buildroot%_localstatedir/%vgl_name
pushd %buildroot%_bindir
for file in glreadtest nettest glxinfo glxspheres* cpustat tcbench eglinfo; do
   mv $file vgl_$file
done

mkdir -p %buildroot%_defaultdocdir/%name-%version/utils
install -pD -m 644 %SOURCE2 %buildroot%_defaultdocdir/%name-%version
install -pD -m 644 vglserver_config %buildroot%_defaultdocdir/%name-%version/utils
install -pD -m 644 vglgenkey %buildroot%_defaultdocdir/%name-%version/utils

rm %buildroot%_bindir/vgl_glxinfo
ln -sf %_libdir/libvglfaker.so %buildroot%_libdir/%vgl_name/libGL.so

%if "%_lib" == "lib64"
mkdir %buildroot%_libexecdir
mv %buildroot%_bindir/.vglrun.vars64 %buildroot%_libexecdir/vglrun.vars64
%else
mv %buildroot%_bindir/.vglrun.vars32 %buildroot%_libexecdir/vglrun.vars32
%endif
popd

%pre
groupadd -r -f xgrp

%post
chgrp xgrp %_localstatedir/%vgl_name
chmod 2755 %_localstatedir/%vgl_name

%files
%_libexecdir/vglrun.vars??
%_bindir/vgl*
%_sbindir/vgl*
%_libdir/%vgl_name
%_libdir/lib??faker.so
%_libdir/libvglfaker-nodl.so
%_libdir/libvglfaker.so
%_libdir/libvglfaker-opencl.so
%_localstatedir/%vgl_name
%doc %_defaultdocdir/%name-%version

%files devel
%_includedir/*.h

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin