enable AMD OpenCL sdk for linux too
Fixes Issue 641
This commit is contained in:
@@ -134,13 +134,19 @@ IF(MSVC)
|
|||||||
#AMD adds an extras slash at the end of the ATISTREAMSDKROOT variable
|
#AMD adds an extras slash at the end of the ATISTREAMSDKROOT variable
|
||||||
SET(AMD_OPENCL_INCLUDES ${AMD_OPENCL_BASE_DIR}/include )
|
SET(AMD_OPENCL_INCLUDES ${AMD_OPENCL_BASE_DIR}/include )
|
||||||
MESSAGE("AMD OPENCL SDK FOUND")
|
MESSAGE("AMD OPENCL SDK FOUND")
|
||||||
MESSAGE(${AMD_OPENCL_INCLUDES})
|
|
||||||
IF (CMAKE_CL_64)
|
IF (CMAKE_CL_64)
|
||||||
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86_64 )
|
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86_64 )
|
||||||
ELSE(CMAKE_CL_64)
|
ELSE(CMAKE_CL_64)
|
||||||
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86 )
|
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86 )
|
||||||
ENDIF(CMAKE_CL_64)
|
ENDIF(CMAKE_CL_64)
|
||||||
|
SET(CMAKE_ATISTREAMSDK_LIBRARY ${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib )
|
||||||
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" ON)
|
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" ON)
|
||||||
|
IF (CMAKE_CL_64)
|
||||||
|
SET(CMAK_GLEW_LIBRARY
|
||||||
|
${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew64s.lib )
|
||||||
|
ELSE(CMAKE_CL_64)
|
||||||
|
SET(CMAK_GLEW_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew32s.lib )
|
||||||
|
ENDIF(CMAKE_CL_64)
|
||||||
ELSE()
|
ELSE()
|
||||||
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" OFF)
|
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" OFF)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
@@ -193,6 +199,23 @@ IF (MSVC OR APPLE)
|
|||||||
ELSE()
|
ELSE()
|
||||||
OPTION(BUILD_MINICL_OPENCL_DEMOS "Build OpenCL demos for MiniCL (Generic CPU)" OFF)
|
OPTION(BUILD_MINICL_OPENCL_DEMOS "Build OpenCL demos for MiniCL (Generic CPU)" OFF)
|
||||||
|
|
||||||
|
FIND_PATH(AMD_OPENCL_BASE_DIR include/CL/cl.h PATH $ENV{ATISTREAMSDKROOT} $ENV{AMDAPPSDKROOT} )
|
||||||
|
IF(AMD_OPENCL_BASE_DIR)
|
||||||
|
#AMD adds an extras slash at the end of the ATISTREAMSDKROOT variable
|
||||||
|
SET(AMD_OPENCL_INCLUDES ${AMD_OPENCL_BASE_DIR}/include )
|
||||||
|
MESSAGE("AMD OPENCL SDK FOUND")
|
||||||
|
MESSAGE(${AMD_OPENCL_INCLUDES})
|
||||||
|
IF (CMAKE_CL_64)
|
||||||
|
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86_64 )
|
||||||
|
ELSE(CMAKE_CL_64)
|
||||||
|
SET(CMAKE_ATISTREAMSDK_LIBPATH ${AMD_OPENCL_BASE_DIR}/lib/x86 )
|
||||||
|
ENDIF(CMAKE_CL_64)
|
||||||
|
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" ON)
|
||||||
|
SET(CMAKE_ATISTREAMSDK_LIBRARY OpenCL )
|
||||||
|
ELSE()
|
||||||
|
OPTION(BUILD_AMD_OPENCL_DEMOS "Build OpenCL demos for AMD (GPU or CPU)" OFF)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
FIND_PATH(INTEL_OPENCL_INCLUDES CL/cl.h)
|
FIND_PATH(INTEL_OPENCL_INCLUDES CL/cl.h)
|
||||||
FIND_PATH(INTEL_OPENCL_ICD_CFG intelocl64.icd /etc/OpenCL/vendors)
|
FIND_PATH(INTEL_OPENCL_ICD_CFG intelocl64.icd /etc/OpenCL/vendors)
|
||||||
FIND_LIBRARY(INTEL_OPENCL_LIBRARIES OpenCL PATH /usr/lib64)
|
FIND_LIBRARY(INTEL_OPENCL_LIBRARIES OpenCL PATH /usr/lib64)
|
||||||
|
|||||||
@@ -32,13 +32,13 @@ IF (USE_GLUT)
|
|||||||
BulletCollision
|
BulletCollision
|
||||||
LinearMath
|
LinearMath
|
||||||
${GLUT_glut_LIBRARY}
|
${GLUT_glut_LIBRARY}
|
||||||
${OPENGL_gl_LIBRARY}
|
${OPENGL_gl_LIBRARY}
|
||||||
${OPENGL_glu_LIBRARY}
|
${OPENGL_glu_LIBRARY}
|
||||||
${CMAK_GLEW_LIBRARY}
|
${CMAK_GLEW_LIBRARY}
|
||||||
${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib
|
${CMAKE_ATISTREAMSDK_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
ADD_EXECUTABLE(AppOpenCLClothDemo_AMD
|
ADD_EXECUTABLE(AppOpenCLClothDemo_AMD
|
||||||
../cl_cloth_demo.cpp
|
../cl_cloth_demo.cpp
|
||||||
${BULLET_PHYSICS_SOURCE_DIR}/Demos/SharedOpenCL/btOpenCLUtils.cpp
|
${BULLET_PHYSICS_SOURCE_DIR}/Demos/SharedOpenCL/btOpenCLUtils.cpp
|
||||||
@@ -80,7 +80,7 @@ IF (UNIX)
|
|||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||||
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
SET_TARGET_PROPERTIES(AppOpenCLClothDemo_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
|
|||||||
@@ -8,35 +8,35 @@ ${AMD_OPENCL_INCLUDES}
|
|||||||
)
|
)
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DUSE_AMD_OPENCL)
|
ADD_DEFINITIONS(-DUSE_AMD_OPENCL)
|
||||||
ADD_DEFINITIONS(-DCL_PLATFORM_AMD)
|
ADD_DEFINITIONS(-DCL_PLATFORM_AMD)
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
ADD_DEFINITIONS(-DGLEW_STATIC)
|
ADD_DEFINITIONS(-DGLEW_STATIC)
|
||||||
ENDIF(WIN32)
|
IF (CMAKE_CL_64)
|
||||||
|
SET(CMAK_GLEW_LIBRARY
|
||||||
IF (CMAKE_CL_64)
|
${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew64s.lib )
|
||||||
SET(CMAK_GLEW_LIBRARY
|
ELSE(CMAKE_CL_64)
|
||||||
${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew64s.lib )
|
SET(CMAK_GLEW_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew32s.lib )
|
||||||
ELSE(CMAKE_CL_64)
|
ENDIF(CMAKE_CL_64)
|
||||||
SET(CMAK_GLEW_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew32s.lib )
|
else()
|
||||||
ENDIF(CMAKE_CL_64)
|
SET(CMAK_GLEW_LIBRARY GLEW)
|
||||||
|
endIF(WIN32)
|
||||||
|
|
||||||
IF (USE_GLUT)
|
IF (USE_GLUT)
|
||||||
LINK_LIBRARIES(
|
LINK_LIBRARIES(
|
||||||
OpenGLSupport
|
OpenGLSupport
|
||||||
BulletDynamics
|
BulletDynamics
|
||||||
BulletCollision
|
BulletCollision
|
||||||
BulletMultiThreaded
|
BulletMultiThreaded
|
||||||
LinearMath
|
LinearMath
|
||||||
${GLUT_glut_LIBRARY}
|
${GLUT_glut_LIBRARY}
|
||||||
${OPENGL_gl_LIBRARY}
|
${OPENGL_gl_LIBRARY}
|
||||||
${OPENGL_glu_LIBRARY}
|
${OPENGL_glu_LIBRARY}
|
||||||
${CMAK_GLEW_LIBRARY}
|
${CMAK_GLEW_LIBRARY}
|
||||||
${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib
|
${CMAKE_ATISTREAMSDK_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
ADD_EXECUTABLE(AppParticlesOCL_AMD
|
ADD_EXECUTABLE(AppParticlesOCL_AMD
|
||||||
${BULLET_PHYSICS_SOURCE_DIR}/Demos/ParticlesOpenCL/btParticlesDynamicsWorld.h
|
${BULLET_PHYSICS_SOURCE_DIR}/Demos/ParticlesOpenCL/btParticlesDynamicsWorld.h
|
||||||
${BULLET_PHYSICS_SOURCE_DIR}/Demos/ParticlesOpenCL/btParticlesSharedDefs.h
|
${BULLET_PHYSICS_SOURCE_DIR}/Demos/ParticlesOpenCL/btParticlesSharedDefs.h
|
||||||
@@ -80,7 +80,7 @@ IF (UNIX)
|
|||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||||
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
SET_TARGET_PROPERTIES(AppParticlesOCL_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
|
|||||||
@@ -14,20 +14,13 @@ ADD_DEFINITIONS(-DUSE_AMD_OPENCL)
|
|||||||
ADD_DEFINITIONS(-DCL_PLATFORM_AMD)
|
ADD_DEFINITIONS(-DCL_PLATFORM_AMD)
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
ADD_DEFINITIONS(-DGLEW_STATIC)
|
ADD_DEFINITIONS(-DGLEW_STATIC)
|
||||||
ENDIF(WIN32)
|
ENDIF(WIN32)
|
||||||
|
|
||||||
IF (CMAKE_CL_64)
|
|
||||||
SET(CMAK_GLEW_LIBRARY
|
IF (USE_GLUT)
|
||||||
${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew64s.lib )
|
LINK_LIBRARIES(
|
||||||
ELSE(CMAKE_CL_64)
|
OpenGLSupport
|
||||||
SET(CMAK_GLEW_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Glut/glew32s.lib )
|
|
||||||
ENDIF(CMAKE_CL_64)
|
|
||||||
|
|
||||||
|
|
||||||
IF (USE_GLUT)
|
|
||||||
LINK_LIBRARIES(
|
|
||||||
OpenGLSupport
|
|
||||||
BulletWorldImporter
|
BulletWorldImporter
|
||||||
BulletSoftBody
|
BulletSoftBody
|
||||||
BulletDynamics
|
BulletDynamics
|
||||||
@@ -37,13 +30,13 @@ IF (USE_GLUT)
|
|||||||
BulletSoftBodySolvers_OpenCL_AMD
|
BulletSoftBodySolvers_OpenCL_AMD
|
||||||
BulletMultiThreaded
|
BulletMultiThreaded
|
||||||
${GLUT_glut_LIBRARY}
|
${GLUT_glut_LIBRARY}
|
||||||
${OPENGL_gl_LIBRARY}
|
${OPENGL_gl_LIBRARY}
|
||||||
${OPENGL_glu_LIBRARY}
|
${OPENGL_glu_LIBRARY}
|
||||||
${CMAK_GLEW_LIBRARY}
|
${CMAK_GLEW_LIBRARY}
|
||||||
${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib
|
${CMAKE_ATISTREAMSDK_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
IF (WIN32)
|
IF (WIN32)
|
||||||
ADD_EXECUTABLE(AppSerializeDemo_AMD
|
ADD_EXECUTABLE(AppSerializeDemo_AMD
|
||||||
../main.cpp
|
../main.cpp
|
||||||
../SerializeDemo.cpp
|
../SerializeDemo.cpp
|
||||||
@@ -96,14 +89,14 @@ ELSE (USE_GLUT)
|
|||||||
BulletFileLoader
|
BulletFileLoader
|
||||||
LinearMath
|
LinearMath
|
||||||
BulletSoftBodySolvers_OpenCL_AMD
|
BulletSoftBodySolvers_OpenCL_AMD
|
||||||
BulletMultiThreaded
|
BulletMultiThreaded
|
||||||
${OPENGL_gl_LIBRARY}
|
${OPENGL_gl_LIBRARY}
|
||||||
${OPENGL_glu_LIBRARY}
|
${OPENGL_glu_LIBRARY}
|
||||||
${CMAK_GLEW_LIBRARY}
|
${CMAKE_GLEW_LIBRARY}
|
||||||
${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib
|
${CMAKE_ATISTREAMSDK_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_EXECUTABLE(AppSerializeDemo_AMD
|
ADD_EXECUTABLE(AppSerializeDemo_AMD
|
||||||
WIN32
|
WIN32
|
||||||
../../OpenGL/Win32AppMain.cpp
|
../../OpenGL/Win32AppMain.cpp
|
||||||
../Win32SerializeDemo.cpp
|
../Win32SerializeDemo.cpp
|
||||||
|
|||||||
@@ -25,15 +25,13 @@ subject to the following restrictions:
|
|||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
#ifdef USE_MINICL
|
#ifdef USE_MINICL
|
||||||
#include <MiniCL/cl.h>
|
#include <MiniCL/cl.h>
|
||||||
#else
|
#else
|
||||||
#include <CL/cl.h>
|
#include <CL/cl.h>
|
||||||
#ifdef _WIN32
|
#include <CL/cl_gl.h>
|
||||||
#include "CL/cl_gl.h"
|
#endif
|
||||||
#endif //_WIN32
|
#endif //__APPLE__
|
||||||
#endif
|
|
||||||
#endif //__APPLE__
|
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#define oclCHECKERROR(a, b) if((a)!=(b)) { printf("OCL Error : %d\n", (a)); assert((a) == (b)); }
|
#define oclCHECKERROR(a, b) if((a)!=(b)) { printf("OCL Error : %d\n", (a)); assert((a) == (b)); }
|
||||||
|
|||||||
@@ -4,13 +4,13 @@ INCLUDE_DIRECTORIES(
|
|||||||
${BULLET_PHYSICS_SOURCE_DIR}/src
|
${BULLET_PHYSICS_SOURCE_DIR}/src
|
||||||
${AMD_OPENCL_INCLUDES}
|
${AMD_OPENCL_INCLUDES}
|
||||||
)
|
)
|
||||||
|
|
||||||
LINK_LIBRARIES(
|
LINK_LIBRARIES(
|
||||||
BulletMultiThreaded LinearMath
|
BulletMultiThreaded LinearMath
|
||||||
${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib
|
${CMAKE_ATISTREAMSDK_LIBRARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_EXECUTABLE(AppVectorAdd_AMD
|
ADD_EXECUTABLE(AppVectorAdd_AMD
|
||||||
../MiniCL_VectorAdd.cpp
|
../MiniCL_VectorAdd.cpp
|
||||||
../VectorAddKernels.cl
|
../VectorAddKernels.cl
|
||||||
)
|
)
|
||||||
@@ -28,7 +28,7 @@ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
|
|||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||||
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
SET_TARGET_PROPERTIES(AppVectorAdd_AMD PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||||
|
|||||||
Reference in New Issue
Block a user