[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [43012] trunk/blender: Patch is partially made by Pelle Johnsen.
Alexander Kuznetsov
kuzsasha at gmail.com
Fri Dec 30 23:10:59 CET 2011
Revision: 43012
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=43012
Author: alexk
Date: 2011-12-30 22:10:48 +0000 (Fri, 30 Dec 2011)
Log Message:
-----------
Patch is partially made by Pelle Johnsen. Thanks!
This patch enables search for specific libraries for vc2010 using "set_lib_path" macro
If *x* library or path exists in lib/win___/vc2010/*x* , vc2010 will use it. If not, compiler will use standard libraries.
It can be easily extended to gcc.
The function is enabled for:
openCollada
openExr
Python
openImageIO
The different libraries are needed for different compilers because C++ was used. There is no standard for lib's C++ structure/functions' names.
Actual libs will follow
Modified Paths:
--------------
trunk/blender/CMakeLists.txt
trunk/blender/build_files/cmake/macros.cmake
trunk/blender/source/creator/CMakeLists.txt
Modified: trunk/blender/CMakeLists.txt
===================================================================
--- trunk/blender/CMakeLists.txt 2011-12-30 21:29:02 UTC (rev 43011)
+++ trunk/blender/CMakeLists.txt 2011-12-30 22:10:48 UTC (rev 43012)
@@ -765,22 +765,27 @@
${LIBDIR}/opencollada/include/COLLADASaxFrameworkLoader/include
${LIBDIR}/opencollada/include/GeneratedSaxParser/include
)
+
+ set_lib_path(OPENCOLLADA_LIBPATH "opencollada/lib")
set(OPENCOLLADA_LIBRARIES
- ${LIBDIR}/opencollada/lib/OpenCOLLADASaxFrameworkLoader.lib
- ${LIBDIR}/opencollada/lib/OpenCOLLADAFramework.lib
- ${LIBDIR}/opencollada/lib/OpenCOLLADABaseUtils.lib
- ${LIBDIR}/opencollada/lib/OpenCOLLADAStreamWriter.lib
- ${LIBDIR}/opencollada/lib/MathMLSolver.lib
- ${LIBDIR}/opencollada/lib/GeneratedSaxParser.lib
- ${LIBDIR}/opencollada/lib/xml2.lib
- ${LIBDIR}/opencollada/lib/buffer.lib
- ${LIBDIR}/opencollada/lib/ftoa.lib
- ${LIBDIR}/opencollada/lib/UTF.lib
+ ${OPENCOLLADA_LIBPATH}/OpenCOLLADASaxFrameworkLoader.lib
+ ${OPENCOLLADA_LIBPATH}/OpenCOLLADAFramework.lib
+ ${OPENCOLLADA_LIBPATH}/OpenCOLLADABaseUtils.lib
+ ${OPENCOLLADA_LIBPATH}/OpenCOLLADAStreamWriter.lib
+ ${OPENCOLLADA_LIBPATH}/MathMLSolver.lib
+ ${OPENCOLLADA_LIBPATH}/GeneratedSaxParser.lib
+ ${OPENCOLLADA_LIBPATH}/xml2.lib
+ ${OPENCOLLADA_LIBPATH}/buffer.lib
+ ${OPENCOLLADA_LIBPATH}/ftoa.lib
+ ${OPENCOLLADA_LIBPATH}/UTF.lib
)
set(PCRE_LIBRARIES
- ${LIBDIR}/opencollada/lib/pcre.lib
+ ${OPENCOLLADA_LIBPATH}/pcre.lib
)
+
+ unset(OPENCOLLADA_LIBPATH)
+
endif()
if(WITH_CODEC_FFMPEG)
@@ -798,18 +803,8 @@
endif()
if(WITH_IMAGE_OPENEXR)
- if(MSVC90)
- set(MSVC_LIB _vs2008)
- set(MSVC_INC)
- elseif(MSVC10)
- set(MSVC_LIB _vs2010)
- set(MSVC_INC _vs2010)
- else()
- set(MSVC_LIB msvc)
- set(MSVC_INC)
- endif()
- set(OPENEXR ${LIBDIR}/openexr)
- set(OPENEXR_LIBPATH ${OPENEXR}/lib${MSVC_LIB})
+ set_lib_path(OPENEXR "openexr")
+ set_lib_path(OPENEXR_LIBPATH "openexr/lib")
set(OPENEXR_LIBRARIES
${OPENEXR_LIBPATH}/Iex.lib
${OPENEXR_LIBPATH}/Half.lib
@@ -817,7 +812,7 @@
${OPENEXR_LIBPATH}/Imath.lib
${OPENEXR_LIBPATH}/IlmThread.lib
)
- set(OPENEXR_INCUDE ${OPENEXR}/include${MSVC_INC})
+ set_lib_path(OPENEXR_INCUDE "openexr/include")
set(OPENEXR_INCLUDE_DIRS
${OPENEXR_INCUDE}
${OPENEXR_INCUDE}/IlmImf
@@ -844,9 +839,9 @@
if(WITH_PYTHON)
# normally cached but not since we include them with blender
set(PYTHON_VERSION 3.2) # CACHE STRING)
- set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}") # CACHE PATH)
- set(PYTHON_LIBRARY "${LIBDIR}/python/lib/python32.lib") #CACHE FILEPATH)
-
+ set_lib_path(PYTHON_INCLUDE_DIR "python/include/python${PYTHON_VERSION}")
+ set_lib_path(PYTHON_LIBRARY "python/lib/python32.lib") #CACHE FILEPATH)
+
# uncached vars
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
@@ -879,7 +874,7 @@
set(OPENIMAGEIO ${LIBDIR}/openimageio)
set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
set(OPENIMAGEIO_LIBRARIES OpenImageIO)
- set(OPENIMAGEIO_LIBPATH ${OPENIMAGEIO}/lib)
+ set_lib_path(OPENIMAGEIO_LIBPATH "openimageio/lib")
set(OPENIMAGEIO_DEFINITIONS)
endif()
@@ -1431,11 +1426,9 @@
if(MSVC10)
if(WITH_IMAGE_OPENEXR)
message(WARNING "MSVC 2010 does not support OpenEXR, disabling WITH_IMAGE_OPENEXR. To enable support use Use MSVC 2008")
- set(WITH_IMAGE_OPENEXR OFF)
endif()
if(WITH_OPENCOLLADA)
message(WARNING "MSVC 2010 does not support OpenCollada, disabling WITH_OPENCOLLADA. To enable support use Use MSVC 2008")
- set(WITH_OPENCOLLADA OFF)
endif()
endif()
Modified: trunk/blender/build_files/cmake/macros.cmake
===================================================================
--- trunk/blender/build_files/cmake/macros.cmake 2011-12-30 21:29:02 UTC (rev 43011)
+++ trunk/blender/build_files/cmake/macros.cmake 2011-12-30 22:10:48 UTC (rev 43012)
@@ -665,3 +665,16 @@
endif()
endfunction()
+macro(set_lib_path
+ lvar
+ lproj)
+
+
+ if(MSVC10 AND EXISTS ${LIBDIR}/vc2010/${lproj})
+ set(${lvar} ${LIBDIR}/vc2010/${lproj})
+ else()
+ set(${lvar} ${LIBDIR}/${lproj})
+ endif()
+
+
+endmacro()
\ No newline at end of file
Modified: trunk/blender/source/creator/CMakeLists.txt
===================================================================
--- trunk/blender/source/creator/CMakeLists.txt 2011-12-30 21:29:02 UTC (rev 43011)
+++ trunk/blender/source/creator/CMakeLists.txt 2011-12-30 22:10:48 UTC (rev 43012)
@@ -437,15 +437,15 @@
# )
if(WITH_PYTHON)
-
+ set_lib_path(PYLIB "python/lib")
install(
- FILES ${LIBDIR}/python/lib/python32.dll
+ FILES ${PYLIB}/python32.dll
DESTINATION ${TARGETDIR}
CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel
)
install(
- FILES ${LIBDIR}/python/lib/python32_d.dll
+ FILES ${PYLIB}/python32_d.dll
DESTINATION ${TARGETDIR}
CONFIGURATIONS Debug
)
@@ -558,9 +558,10 @@
)
if(WITH_OPENIMAGEIO)
+ set_lib_path(OIIOBIN "openimageio/bin")
install(
FILES
- ${LIBDIR}/openimageio/bin/OpenImageIO.dll
+ ${OIIOBIN}/OpenImageIO.dll
DESTINATION ${TARGETDIR}
)
endif()
More information about the Bf-blender-cvs
mailing list