summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorjinhyung.jo <jinhyung.jo@samsung.com>2014-05-08 19:32:41 +0900
committerjinhyung.jo <jinhyung.jo@samsung.com>2015-01-08 17:00:24 +0900
commit743a976a239076191811326fe46d9ebdbb1f9798 (patch)
treeb3aaa2aa95a71e56e2450d5ef00dac9e11b0f2e8 /packaging
parentb2b6c1d9743241b78d25a2d63a68135ea9261798 (diff)
downloademulator-yagl-743a976a239076191811326fe46d9ebdbb1f9798.tar.gz
emulator-yagl-743a976a239076191811326fe46d9ebdbb1f9798.tar.bz2
emulator-yagl-743a976a239076191811326fe46d9ebdbb1f9798.zip
YaGL: Modified packaging rules
Remove the dependency of the packages, simulator-opengl & opengl-es-virtual-drv Change-Id: I6b8f0807df98762dc3d2391de1d1a4021f1b1ff8 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
Diffstat (limited to 'packaging')
-rw-r--r--packaging/emul-opengl-yagl.service8
-rw-r--r--packaging/emulator-yagl.spec33
-rwxr-xr-xpackaging/virtgl.sh47
-rwxr-xr-xpackaging/yagl.sh33
4 files changed, 66 insertions, 55 deletions
diff --git a/packaging/emul-opengl-yagl.service b/packaging/emul-opengl-yagl.service
index 5682ae3..1711f08 100644
--- a/packaging/emul-opengl-yagl.service
+++ b/packaging/emul-opengl-yagl.service
@@ -1,9 +1,11 @@
[Unit]
-Description=OpenGL "YAGL"
+Description=OpenGL mode check
DefaultDependencies=no
-After=emul-opengl-mode.service
Before=basic.target
[Service]
Type=oneshot
-ExecStart=/bin/sh -c 'true'
+ExecStart=/bin/sh -c '/etc/emulator/yagl.sh'
+
+[Install]
+WantedBy=emulator_preinit.target
diff --git a/packaging/emulator-yagl.spec b/packaging/emulator-yagl.spec
index 42cc421..2e52be1 100644
--- a/packaging/emulator-yagl.spec
+++ b/packaging/emulator-yagl.spec
@@ -3,10 +3,11 @@
Name: emulator-yagl
Summary: YaGL - OpenGLES acceleration module for emulator
-Version: 1.0
-Release: 18
+Version: 1.2
+Release: 1
License: MIT
#URL: http://www.khronos.org
+ExclusiveArch: %{ix86}
Source0: %{name}-%{version}.tar.gz
Source1001: emulator-yagl.manifest
BuildRequires: cmake
@@ -25,6 +26,7 @@ BuildRequires: pkgconfig(x11-xcb)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(dri2proto)
%endif
+Provides: opengl-es-drv
%if !%{with emulator}
ExclusiveArch:
@@ -36,6 +38,7 @@ This package contains shared libraries libEGL, libGLES_CM, libGLESv2.
%package devel
Summary: YaGL - OpenGLES acceleration module for emulator (devel)
+Provides: opengl-es-drv-devel
Requires: %{name} = %{version}-%{release}
Requires: pkgconfig(x11)
@@ -50,7 +53,7 @@ cp %{SOURCE1001} .
%if %{with wayland}
cmake -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr -DPLATFORM_X11=0 -DPLATFORM_GBM=1 -DPLATFORM_WAYLAND=1
%else
-cmake -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr -DINSTALL_LIB_DIR=lib/yagl
+cmake -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr -DINSTALL_LIB_DIR=lib/yagl -DDUMMY_LIBS=1
%endif
make
@@ -63,10 +66,22 @@ ln -s libGLESv2.so.2.0.0 %{buildroot}/usr/lib/libGL.so.1.2.0
%else
ln -s libGLESv2.so.2.0 %{buildroot}/usr/lib/yagl/libGLESv2.so.1.0
ln -s libGLESv2.so.1.0 %{buildroot}/usr/lib/yagl/libGLESv2.so.1
+
+ln -s yagl/libEGL.so.1.0 %{buildroot}%{_libdir}/libEGL.so.1
+ln -s libEGL.so.1 %{buildroot}%{_libdir}/libEGL.so
+ln -s yagl/libGLESv1_CM.so.1.0 %{buildroot}%{_libdir}/libGLESv1_CM.so.1
+ln -s libGLESv1_CM.so.1 %{buildroot}%{_libdir}/libGLESv1_CM.so
+ln -s yagl/libGLESv2.so.1.0 %{buildroot}%{_libdir}/libGLESv2.so.1
+ln -s libGLESv2.so.1 %{buildroot}%{_libdir}/libGLESv2.so
+
mkdir -p %{buildroot}/usr/lib/systemd/system
cp packaging/emul-opengl-yagl.service %{buildroot}/usr/lib/systemd/system
+
+mkdir -p %{buildroot}/usr/lib/systemd/system/emulator_preinit.target.wants
+ln -s ../emul-opengl-yagl.service %{buildroot}/usr/lib/systemd/system/emulator_preinit.target.wants/emul-opengl-yagl.service
+
mkdir -p %{buildroot}/etc/emulator
-cp packaging/virtgl.sh %{buildroot}/etc/emulator
+cp packaging/yagl.sh %{buildroot}/etc/emulator
%endif
mkdir -p %{buildroot}/usr/include
@@ -77,6 +92,9 @@ cp -r include/GLES2 %{buildroot}/usr/include/
cp -r include/GLES3 %{buildroot}/usr/include/
cp -r include/KHR %{buildroot}/usr/include/
+mkdir -p %{buildroot}/usr/lib/pkgconfig
+cp pkgconfig/* %{buildroot}/usr/lib/pkgconfig/
+
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
@@ -87,9 +105,13 @@ cp -r include/KHR %{buildroot}/usr/include/
%if %{with wayland}
/usr/lib/*.so*
%else
+/usr/lib/libEGL*
+/usr/lib/libGLES*
/usr/lib/yagl/*
+/usr/lib/dummy-gl/*
/usr/lib/systemd/system/emul-opengl-yagl.service
-%attr(777,root,root)/etc/emulator/virtgl.sh
+/usr/lib/systemd/system/emulator_preinit.target.wants/emul-opengl-yagl.service
+%attr(777,root,root)/etc/emulator/yagl.sh
%endif
%files devel
@@ -101,3 +123,4 @@ cp -r include/KHR %{buildroot}/usr/include/
/usr/include/GLES2
/usr/include/GLES3
/usr/include/KHR
+/usr/lib/pkgconfig
diff --git a/packaging/virtgl.sh b/packaging/virtgl.sh
deleted file mode 100755
index 6e62868..0000000
--- a/packaging/virtgl.sh
+++ /dev/null
@@ -1,47 +0,0 @@
- #!/bin/sh
-
-echo -e "[${_G} Opengl-es acceleration module setting. ${C_}]"
-if [ -e /dev/yagl ] ; then
- echo -e "[${_G} Emulator support gles hw acceleration. ${C_}]"
- echo -e "[${_G} Change permission of /dev/yagl. ${C_}]"
- chmod 666 /dev/yagl
- echo -e "[${_G} Apply to use hw gles library. ${C_}]"
- ln -s -f /usr/lib/yagl/libEGL.so.1.0 /usr/lib/libEGL.so
- ln -s -f /usr/lib/yagl/libEGL.so.1.0 /usr/lib/libEGL.so.1
- ln -s -f /usr/lib/yagl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so
- ln -s -f /usr/lib/yagl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so.1
- ln -s -f /usr/lib/yagl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so
- ln -s -f /usr/lib/yagl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so.1
- rm -f /usr/lib/st_GL.so
- rm -f /usr/lib/egl_gallium.so
- rm -f /usr/lib/libglapi.so*
- systemctl set-environment ELM_ENGINE=gl
-elif [ -e /dev/glmem ] ; then
- echo -e "[${_G} Emulator support gles hw acceleration. ${C_}]"
- echo -e "[${_G} Change permission of /dev/glmem. ${C_}]"
- chmod 666 /dev/glmem
- echo -e "[${_G} Apply to use hw gles library. ${C_}]"
- ln -s -f /usr/lib/host-gl/libEGL.so.1.0 /usr/lib/libEGL.so
- ln -s -f /usr/lib/host-gl/libEGL.so.1.0 /usr/lib/libEGL.so.1
- ln -s -f /usr/lib/host-gl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so
- ln -s -f /usr/lib/host-gl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so.1
- ln -s -f /usr/lib/host-gl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so
- ln -s -f /usr/lib/host-gl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so.1
- rm -f /usr/lib/st_GL.so
- rm -f /usr/lib/egl_gallium.so
- rm -f /usr/lib/libglapi.so*
-else
- echo -e "[${_G} Emulator does not support gles hw acceleration. ${C_}]"
- echo -e "[${_G} Apply to use sw mesa gles library. ${C_}]"
- ln -s -f /usr/lib/mesa-gl/libEGL.so.1.0 /usr/lib/libEGL.so
- ln -s -f /usr/lib/mesa-gl/libEGL.so.1.0 /usr/lib/libEGL.so.1
- ln -s -f /usr/lib/mesa-gl/libGLESv1_CM.so.1.1.0 /usr/lib/libGLESv1_CM.so
- ln -s -f /usr/lib/mesa-gl/libGLESv1_CM.so.1.1.0 /usr/lib/libGLESv1_CM.so.1
- ln -s -f /usr/lib/mesa-gl/libGLESv2.so.2.0.0 /usr/lib/libGLESv2.so
- ln -s -f /usr/lib/mesa-gl/libGLESv2.so.2.0.0 /usr/lib/libGLESv2.so.1
- ln -s -f /usr/lib/mesa-gl/st_GL.so /usr/lib/st_GL.so
- ln -s -f /usr/lib/mesa-gl/egl_gallium.so /usr/lib/egl_gallium.so
- ln -s -f /usr/lib/mesa-gl/libglapi.so.0.0.0 /usr/lib/libglapi.so
- ln -s -f /usr/lib/mesa-gl/libglapi.so.0.0.0 /usr/lib/libglapi.so.0
- ln -s -f /usr/lib/mesa-gl/libglapi.so.0.0.0 /usr/lib/libglapi.so.0.0.0
-fi
diff --git a/packaging/yagl.sh b/packaging/yagl.sh
new file mode 100755
index 0000000..c21083d
--- /dev/null
+++ b/packaging/yagl.sh
@@ -0,0 +1,33 @@
+ #!/bin/sh
+
+echo -e "[${_G} Opengl-es acceleration module setting. ${C_}]"
+if [ -e /dev/yagl ] ; then
+ echo -e "[${_G} Emulator support gles hw acceleration. ${C_}]"
+ echo -e "[${_G} Change permission of /dev/yagl. ${C_}]"
+ chown root:video /dev/dri/card0
+ chown root:video /dev/yagl
+ chown root:video /dev/slp_global_lock
+ chmod 660 /dev/dri/card0
+ chmod 660 /dev/yagl
+ chmod 660 /dev/slp_global_lock
+ chsmack -a "*" /dev/dri/card0
+ chsmack -a "*" /dev/yagl
+ chsmack -a "*" /dev/slp_global_lock
+ echo -e "[${_G} Apply to use hw gles library. ${C_}]"
+ ln -s -f /usr/lib/yagl/libEGL.so.1.0 /usr/lib/libEGL.so
+ ln -s -f /usr/lib/yagl/libEGL.so.1.0 /usr/lib/libEGL.so.1
+ ln -s -f /usr/lib/yagl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so
+ ln -s -f /usr/lib/yagl/libGLESv1_CM.so.1.0 /usr/lib/libGLESv1_CM.so.1
+ ln -s -f /usr/lib/yagl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so
+ ln -s -f /usr/lib/yagl/libGLESv2.so.1.0 /usr/lib/libGLESv2.so.1
+ systemctl set-environment ELM_ENGINE=gl
+else
+ echo -e "[${_G} Emulator does not support gles hw acceleration. ${C_}]"
+ echo -e "[${_G} Apply to use gles dummy library. ${C_}]"
+ ln -s -f /usr/lib/dummy-gl/libEGL_dummy.so /usr/lib/libEGL.so
+ ln -s -f /usr/lib/dummy-gl/libEGL_dummy.so /usr/lib/libEGL.so.1
+ ln -s -f /usr/lib/dummy-gl/libGLESv1_dummy.so /usr/lib/libGLESv1_CM.so
+ ln -s -f /usr/lib/dummy-gl/libGLESv1_dummy.so /usr/lib/libGLESv1_CM.so.1
+ ln -s -f /usr/lib/dummy-gl/libGLESv2_dummy.so /usr/lib/libGLESv2.so
+ ln -s -f /usr/lib/dummy-gl/libGLESv2_dummy.so /usr/lib/libGLESv2.so.1
+fi