f002bb3
From 062e79e1cc1e2d22d5d9d7fe5d394b923372fe45 Mon Sep 17 00:00:00 2001
6aae606
From: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6aae606
Date: Sun, 12 Jan 2014 02:09:16 +0400
6aae606
Subject: [PATCH] opencl: use versioned .so in mesa.icd
6aae606
6aae606
We must have versioned library in mesa.icd, because ICD loader would
6aae606
fail if the mesa-devel package wasn't installed.
6aae606
6aae606
Reported-by: Fabian Deutsch <fabian.deutsch@gmx.de>
6aae606
Reference: https://bugs.freedesktop.org/show_bug.cgi?id=73512
6aae606
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6aae606
---
6aae606
 configure.ac                           | 3 +++
6aae606
 src/gallium/targets/opencl/Makefile.am | 2 +-
6aae606
 src/gallium/targets/opencl/mesa.icd    | 1 -
6aae606
 src/gallium/targets/opencl/mesa.icd.in | 1 +
6aae606
 4 files changed, 5 insertions(+), 2 deletions(-)
6aae606
 delete mode 100644 src/gallium/targets/opencl/mesa.icd
6aae606
 create mode 100644 src/gallium/targets/opencl/mesa.icd.in
6aae606
6aae606
diff --git a/configure.ac b/configure.ac
f002bb3
index 164b662..fe64a9a 100644
6aae606
--- a/configure.ac
6aae606
+++ b/configure.ac
6aae606
@@ -25,6 +25,8 @@ m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
6aae606
 dnl Set internal versions
6aae606
 OSMESA_VERSION=8
6aae606
 AC_SUBST([OSMESA_VERSION])
6aae606
+OPENCL_VERSION=1
6aae606
+AC_SUBST([OPENCL_VERSION])
6aae606
 
6aae606
 dnl Versions for external dependencies
000ebe3
 LIBDRM_REQUIRED=2.4.38
f002bb3
@@ -2111,6 +2113,7 @@ AC_CONFIG_FILES([Makefile
6aae606
 		src/gallium/targets/egl-static/Makefile
6aae606
 		src/gallium/targets/gbm/Makefile
6aae606
 		src/gallium/targets/opencl/Makefile
6aae606
+		src/gallium/targets/opencl/mesa.icd
000ebe3
 		src/gallium/targets/xa/Makefile
000ebe3
 		src/gallium/targets/xa/xatracker.pc
000ebe3
 		src/gallium/targets/omx-nouveau/Makefile
6aae606
diff --git a/src/gallium/targets/opencl/Makefile.am b/src/gallium/targets/opencl/Makefile.am
000ebe3
index ba45aee..0a3d134 100644
6aae606
--- a/src/gallium/targets/opencl/Makefile.am
6aae606
+++ b/src/gallium/targets/opencl/Makefile.am
000ebe3
@@ -5,7 +5,7 @@ lib_LTLIBRARIES = lib@OPENCL_LIBNAME@.la
6aae606
 lib@OPENCL_LIBNAME@_la_LDFLAGS = \
6aae606
 	$(LLVM_LDFLAGS) \
000ebe3
 	-no-undefined \
000ebe3
-	-version-number 1:0 \
000ebe3
+	-version-number @OPENCL_VERSION@:0 \
000ebe3
 	-Wl,--version-script=$(top_srcdir)/src/gallium/targets/opencl/opencl.sym \
000ebe3
 	$(GC_SECTIONS) \
000ebe3
 	$(LD_NO_UNDEFINED)
6aae606
diff --git a/src/gallium/targets/opencl/mesa.icd b/src/gallium/targets/opencl/mesa.icd
6aae606
deleted file mode 100644
6aae606
index 6a6a870..0000000
6aae606
--- a/src/gallium/targets/opencl/mesa.icd
6aae606
+++ /dev/null
6aae606
@@ -1 +0,0 @@
6aae606
-libMesaOpenCL.so
6aae606
diff --git a/src/gallium/targets/opencl/mesa.icd.in b/src/gallium/targets/opencl/mesa.icd.in
6aae606
new file mode 100644
6aae606
index 0000000..1b77b4e
6aae606
--- /dev/null
6aae606
+++ b/src/gallium/targets/opencl/mesa.icd.in
6aae606
@@ -0,0 +1 @@
6aae606
+lib@OPENCL_LIBNAME@.so.@OPENCL_VERSION@
6aae606
-- 
f002bb3
2.0.0
6aae606