From 69ee357dd89a604e3a8ca86fbe08a5052edebd13 Mon Sep 17 00:00:00 2001
From: Maneesh Gupta <maneesh.gupta@amd.com>
Date: Fri, 6 Feb 2015 14:17:25 +0530
Subject: [PATCH 2/3] Use clew instead of cl.h for OpenCL

---
 cmdutils_opencl.c  | 5 +++++
 libavutil/Makefile | 4 ++--
 libavutil/opencl.c | 4 ++++
 libavutil/opencl.h | 6 +-----
 4 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/cmdutils_opencl.c b/cmdutils_opencl.c
index 3dfd156..1954974 100644
--- a/cmdutils_opencl.c
+++ b/cmdutils_opencl.c
@@ -217,6 +217,11 @@ int opt_opencl_bench(void *optctx, const char *opt, const char *arg)
     OpenCLDeviceBenchmark *devices = NULL;
     cl_platform_id platform;
 
+    if (clewInit() < 0) {
+        av_log(NULL, AV_LOG_ERROR, "Could not initialize clew\n");
+        return AVERROR(EINVAL);
+    }
+    
     av_opencl_get_device_list(&device_list);
     for (i = 0; i < device_list->platform_num; i++)
         nb_devices += device_list->platform_node[i]->device_num;
diff --git a/libavutil/Makefile b/libavutil/Makefile
index 6caf896..281bc0e 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -66,7 +66,7 @@ HEADERS = adler32.h                                                     \
 
 HEADERS-$(CONFIG_LZO)                   += lzo.h
 
-HEADERS-$(CONFIG_OPENCL)                += opencl.h
+HEADERS-$(CONFIG_OPENCL)                += opencl.h clew.h
 
 ARCH_HEADERS = bswap.h                                                  \
                intmath.h                                                \
@@ -136,7 +136,7 @@ OBJS = adler32.o                                                        \
        xtea.o                                                           \
 
 OBJS-$(CONFIG_LZO)                      += lzo.o
-OBJS-$(CONFIG_OPENCL)                   += opencl.o opencl_internal.o
+OBJS-$(CONFIG_OPENCL)                   += opencl.o opencl_internal.o clew.o
 
 OBJS += $(COMPAT_OBJS:%=../compat/%)
 
diff --git a/libavutil/opencl.c b/libavutil/opencl.c
index 36cb6fe..2ebd812 100644
--- a/libavutil/opencl.c
+++ b/libavutil/opencl.c
@@ -473,6 +473,10 @@ static int init_opencl_env(OpenclContext *opencl_ctx, AVOpenCLExternalEnv *ext_o
     int i, ret = 0;
     AVOpenCLDeviceNode *device_node = NULL;
 
+    ret = clewInit();
+    if (ret < 0) {
+        return ret;
+    }
     if (ext_opencl_env) {
         if (opencl_ctx->is_user_created)
             return 0;
diff --git a/libavutil/opencl.h b/libavutil/opencl.h
index 0b7b8d4..2f542f2 100644
--- a/libavutil/opencl.h
+++ b/libavutil/opencl.h
@@ -32,11 +32,7 @@
 #ifndef LIBAVUTIL_OPENCL_H
 #define LIBAVUTIL_OPENCL_H
 
-#ifdef __APPLE__
-#include <OpenCL/cl.h>
-#else
-#include <CL/cl.h>
-#endif
+#include "clew.h"
 #include <stdint.h>
 #include "dict.h"
 
-- 
1.9.5.msysgit.0

