[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36024] trunk/blender: add option WITH_BUILTIN_GLEW, so linux packagers can disable to use their own glew library.
Campbell Barton
ideasman42 at gmail.com
Wed Apr 6 01:31:02 CEST 2011
Revision: 36024
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36024
Author: campbellbarton
Date: 2011-04-05 23:31:01 +0000 (Tue, 05 Apr 2011)
Log Message:
-----------
add option WITH_BUILTIN_GLEW, so linux packagers can disable to use their own glew library.
Modified Paths:
--------------
trunk/blender/CMakeLists.txt
trunk/blender/build_files/cmake/macros.cmake
trunk/blender/extern/CMakeLists.txt
trunk/blender/intern/ghost/CMakeLists.txt
trunk/blender/source/blender/blenfont/CMakeLists.txt
trunk/blender/source/blender/blenkernel/CMakeLists.txt
trunk/blender/source/blender/editors/render/CMakeLists.txt
trunk/blender/source/blender/gpu/CMakeLists.txt
trunk/blender/source/blender/makesrna/intern/CMakeLists.txt
trunk/blender/source/blender/nodes/CMakeLists.txt
trunk/blender/source/blender/python/generic/CMakeLists.txt
trunk/blender/source/blender/windowmanager/CMakeLists.txt
trunk/blender/source/blenderplayer/CMakeLists.txt
trunk/blender/source/creator/CMakeLists.txt
trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt
trunk/blender/source/gameengine/GamePlayer/common/CMakeLists.txt
trunk/blender/source/gameengine/GamePlayer/ghost/CMakeLists.txt
trunk/blender/source/gameengine/Ketsji/CMakeLists.txt
trunk/blender/source/gameengine/Physics/Bullet/CMakeLists.txt
trunk/blender/source/gameengine/Rasterizer/CMakeLists.txt
trunk/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/CMakeLists.txt
trunk/blender/source/gameengine/VideoTexture/CMakeLists.txt
Added Paths:
-----------
trunk/blender/build_files/cmake/Modules/
trunk/blender/build_files/cmake/Modules/FindGLEW.cmake
Modified: trunk/blender/CMakeLists.txt
===================================================================
--- trunk/blender/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -44,6 +44,9 @@
cmake_minimum_required(VERSION 2.8)
+# this starts out unset
+set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/build_files/cmake/Modules/")
+
# quiet output for Makefiles, 'make -s' helps too
# set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
@@ -86,6 +89,7 @@
if(UNIX AND NOT APPLE)
option(WITH_X11_XINPUT "Enable X11 Xinput (tablet support)" ON)
+ option(WITH_BUILTIN_GLEW "Use GLEW OpenGL wrapper library bundled with blender" ON)
endif()
# Modifiers
@@ -1021,6 +1025,19 @@
endif()
#-----------------------------------------------------------------------------
+# Configure GLEW
+
+if(WITH_BUILTIN_GLEW)
+ # set(GLEW_LIBRARY "") # unused
+ set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
+else()
+ find_package(GLEW)
+ if(NOT GLEW_FOUND)
+ message(FATAL_ERROR "GLEW is required to build blender, install it or use WITH_BUILTIN_GLEW")
+ endif()
+endif()
+
+#-----------------------------------------------------------------------------
# Configure Python.
if(WITH_PYTHON_MODULE)
Added: trunk/blender/build_files/cmake/Modules/FindGLEW.cmake
===================================================================
--- trunk/blender/build_files/cmake/Modules/FindGLEW.cmake (rev 0)
+++ trunk/blender/build_files/cmake/Modules/FindGLEW.cmake 2011-04-05 23:31:01 UTC (rev 36024)
@@ -0,0 +1,59 @@
+#
+# Try to find GLEW library and include path.
+# Once done this will define
+#
+# GLEW_FOUND
+# GLEW_INCLUDE_PATH
+# GLEW_LIBRARY
+#
+
+IF (WIN32)
+ FIND_PATH( GLEW_INCLUDE_PATH GL/glew.h
+ $ENV{PROGRAMFILES}/GLEW/include
+ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/include
+ DOC "The directory where GL/glew.h resides")
+ IF (NV_SYSTEM_PROCESSOR STREQUAL "AMD64")
+ FIND_LIBRARY( GLEW_LIBRARY
+ NAMES glew64 glew64s
+ PATHS
+ $ENV{PROGRAMFILES}/GLEW/lib
+ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin
+ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib
+ DOC "The GLEW library (64-bit)"
+ )
+ ELSE(NV_SYSTEM_PROCESSOR STREQUAL "AMD64")
+ FIND_LIBRARY( GLEW_LIBRARY
+ NAMES glew GLEW glew32 glew32s
+ PATHS
+ $ENV{PROGRAMFILES}/GLEW/lib
+ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin
+ ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib
+ DOC "The GLEW library"
+ )
+ ENDIF(NV_SYSTEM_PROCESSOR STREQUAL "AMD64")
+ELSE (WIN32)
+ FIND_PATH( GLEW_INCLUDE_PATH GL/glew.h
+ /usr/include
+ /usr/local/include
+ /sw/include
+ /opt/local/include
+ DOC "The directory where GL/glew.h resides")
+ FIND_LIBRARY( GLEW_LIBRARY
+ NAMES GLEW glew
+ PATHS
+ /usr/lib64
+ /usr/lib
+ /usr/local/lib64
+ /usr/local/lib
+ /sw/lib
+ /opt/local/lib
+ DOC "The GLEW library")
+ENDIF (WIN32)
+
+IF (GLEW_INCLUDE_PATH)
+ SET( GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
+ELSE (GLEW_INCLUDE_PATH)
+ SET( GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
+ENDIF (GLEW_INCLUDE_PATH)
+
+MARK_AS_ADVANCED( GLEW_FOUND )
\ No newline at end of file
Modified: trunk/blender/build_files/cmake/macros.cmake
===================================================================
--- trunk/blender/build_files/cmake/macros.cmake 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/build_files/cmake/macros.cmake 2011-04-05 23:31:01 UTC (rev 36024)
@@ -138,6 +138,10 @@
endif()
endif()
+ if(NOT WITH_BUILTIN_GLEW)
+ target_link_libraries(${target} ${GLEW_LIBRARY})
+ endif()
+
target_link_libraries(${target} ${OPENGL_glu_LIBRARY} ${JPEG_LIBRARIES} ${PNG_LIBRARIES} ${ZLIB_LIBRARIES})
target_link_libraries(${target} ${FREETYPE_LIBRARY})
Modified: trunk/blender/extern/CMakeLists.txt
===================================================================
--- trunk/blender/extern/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/extern/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -35,7 +35,9 @@
add_subdirectory(binreloc)
endif()
-add_subdirectory(glew)
+if(WITH_BUILTIN_GLEW)
+ add_subdirectory(glew)
+endif()
if(WITH_IMAGE_OPENJPEG AND (NOT UNIX OR APPLE))
add_subdirectory(libopenjpeg)
Modified: trunk/blender/intern/ghost/CMakeLists.txt
===================================================================
--- trunk/blender/intern/ghost/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/intern/ghost/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -27,9 +27,9 @@
set(INC
.
../string
- ../../extern/glew/include
../../source/blender/imbuf
../../source/blender/makesdna
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
Modified: trunk/blender/source/blender/blenfont/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/blenfont/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/blenfont/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -29,7 +29,7 @@
../editors/include
../blenkernel
../../../intern/guardedalloc
- ../../../extern/glew/include
+ ${GLEW_INCLUDE_PATH}
${FREETYPE_INCLUDE_DIRS}
)
Modified: trunk/blender/source/blender/blenkernel/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/blenkernel/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/blenkernel/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -38,7 +38,6 @@
../nodes
../editors/include
../render/extern/include
- ../../../extern/glew/include
../../../intern/audaspace/intern
../../../intern/bsp/extern ../blenfont
../../../intern/decimation/extern
@@ -50,6 +49,7 @@
../../../intern/smoke/extern
../../../intern/mikktspace
../../../source/blender/windowmanager # XXX - BAD LEVEL CALL WM_api.h
+ ${GLEW_INCLUDE_PATH}
${ZLIB_INCLUDE_DIRS}
)
Modified: trunk/blender/source/blender/editors/render/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/editors/render/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/editors/render/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -32,7 +32,7 @@
../../render/extern/include
../../windowmanager
../../../../intern/guardedalloc
- ../../../../extern/glew/include
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
Modified: trunk/blender/source/blender/gpu/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/gpu/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/gpu/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -32,9 +32,9 @@
../imbuf
../makesdna
../makesrna
- ../../../extern/glew/include
../../../intern/guardedalloc
../../../intern/smoke/extern
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
Modified: trunk/blender/source/blender/makesrna/intern/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/makesrna/intern/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/makesrna/intern/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -144,10 +144,10 @@
../../windowmanager
../../editors/include
../../render/extern/include
- ../../../../extern/glew/include
../../../../intern/audaspace/intern
../../../../intern/guardedalloc
../../../../intern/memutil
+ ${GLEW_INCLUDE_PATH}
)
add_executable(makesrna ${SRC} ${SRC_RNA_INC} ${SRC_DNA_INC})
Modified: trunk/blender/source/blender/nodes/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/nodes/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/nodes/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -34,7 +34,7 @@
../makesrna
../render/extern/include
../../../intern/guardedalloc
- ../../../extern/glew/include
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
Modified: trunk/blender/source/blender/python/generic/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/python/generic/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/python/generic/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -25,7 +25,7 @@
../../blenkernel
../../blenloader
../../../../intern/guardedalloc
- ../../../../extern/glew/include
+ ${GLEW_INCLUDE_PATH}
${PYTHON_INCLUDE_DIRS}
)
Modified: trunk/blender/source/blender/windowmanager/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/windowmanager/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blender/windowmanager/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -43,8 +43,8 @@
../../../intern/elbeem/extern
../../../intern/ghost
../../../intern/opennl/extern
- ../../../extern/glew/include
${OPENGL_INCLUDE_DIR}
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
Modified: trunk/blender/source/blenderplayer/CMakeLists.txt
===================================================================
--- trunk/blender/source/blenderplayer/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/blenderplayer/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -112,13 +112,16 @@
bf_intern_audaspace
blenkernel_blc
extern_binreloc
- extern_glew
extern_minilzo
bf_intern_ghost # duplicate for linking
bf_blenkernel # duplicate for linking
bf_intern_mikktspace
)
+ if(WITH_BUILTIN_GLEW)
+ list(APPEND BLENDER_SORTED_LIBS extern_glew)
+ endif()
+
if(WITH_LZMA)
list(APPEND BLENDER_SORTED_LIBS extern_lzma)
endif()
Modified: trunk/blender/source/creator/CMakeLists.txt
===================================================================
--- trunk/blender/source/creator/CMakeLists.txt 2011-04-05 12:31:55 UTC (rev 36023)
+++ trunk/blender/source/creator/CMakeLists.txt 2011-04-05 23:31:01 UTC (rev 36024)
@@ -777,7 +777,6 @@
extern_bullet
ge_logic_loopbacknetwork
bf_intern_moto
- extern_glew
extern_openjpeg
extern_redcode
ge_videotex
@@ -788,6 +787,10 @@
bf_intern_mikktspace
)
+ if(WITH_BUILTIN_GLEW)
+ list(APPEND BLENDER_SORTED_LIBS extern_glew)
+ endif()
+
if(WITH_BINRELOC)
list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
endif()
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list