forked from bartvdbraak/blender
cmake:
new macro file_list_suffix() for adding a suffix to every file in a path before the file extension. useful to create names for debug libs on windows.
This commit is contained in:
parent
f31bae0aab
commit
145944d66f
@ -247,8 +247,7 @@ set(CXX_WARNINGS "")
|
|||||||
# cmake ../blender \
|
# cmake ../blender \
|
||||||
# -D PYTHON_VERSION=3.2 \
|
# -D PYTHON_VERSION=3.2 \
|
||||||
# -D PYTHON_INCLUDE_DIRS=/opt/py32/include/python3.2d \
|
# -D PYTHON_INCLUDE_DIRS=/opt/py32/include/python3.2d \
|
||||||
# -D PYTHON_LIBPATH=/opt/py32/lib \
|
# -D PYTHON_LIBRARIES=/opt/py32/lib/libpython3.2d.so
|
||||||
# -D PYTHON_LIBRARY=python3.2d
|
|
||||||
#
|
#
|
||||||
# On Macs:
|
# On Macs:
|
||||||
# cmake ../blender \
|
# cmake ../blender \
|
||||||
@ -668,7 +667,7 @@ elseif(WIN32)
|
|||||||
set(PYTHON_VERSION 3.2)
|
set(PYTHON_VERSION 3.2)
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_BINARY python) # not used yet
|
# set(PYTHON_BINARY python) # not used yet
|
||||||
set(PYTHON_LIBRARY python32)
|
set(PYTHON_LIBRARIES python32)
|
||||||
set(PYTHON_LIBPATH ${PYTHON}/lib)
|
set(PYTHON_LIBPATH ${PYTHON}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -775,7 +774,7 @@ elseif(WIN32)
|
|||||||
set(PYTHON_VERSION 3.2)
|
set(PYTHON_VERSION 3.2)
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_BINARY python) # not used yet
|
# set(PYTHON_BINARY python) # not used yet
|
||||||
set(PYTHON_LIBRARY python32mw)
|
set(PYTHON_LIBRARIES python32mw)
|
||||||
set(PYTHON_LIBPATH ${PYTHON}/lib)
|
set(PYTHON_LIBPATH ${PYTHON}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -835,7 +834,7 @@ elseif(APPLE)
|
|||||||
set(PYTHON ${LIBDIR}/python)
|
set(PYTHON ${LIBDIR}/python)
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON}/include/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_BINARY "${PYTHON}/bin/python${PYTHON_VERSION}") # not used yet
|
# set(PYTHON_BINARY "${PYTHON}/bin/python${PYTHON_VERSION}") # not used yet
|
||||||
set(PYTHON_LIBRARY python${PYTHON_VERSION})
|
set(PYTHON_LIBRARIES python${PYTHON_VERSION})
|
||||||
set(PYTHON_LIBPATH "${PYTHON}/lib/python${PYTHON_VERSION}")
|
set(PYTHON_LIBPATH "${PYTHON}/lib/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
|
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
|
||||||
else()
|
else()
|
||||||
@ -845,7 +844,7 @@ elseif(APPLE)
|
|||||||
set(PYTHON_VERSION 3.2)
|
set(PYTHON_VERSION 3.2)
|
||||||
set(PYTHON_INCLUDE_DIRS "${PYTHON}${PYTHON_VERSION}/include/python${PYTHON_VERSION}")
|
set(PYTHON_INCLUDE_DIRS "${PYTHON}${PYTHON_VERSION}/include/python${PYTHON_VERSION}")
|
||||||
# set(PYTHON_BINARY ${PYTHON}${PYTHON_VERSION}/bin/python${PYTHON_VERSION}) # not used yet
|
# set(PYTHON_BINARY ${PYTHON}${PYTHON_VERSION}/bin/python${PYTHON_VERSION}) # not used yet
|
||||||
set(PYTHON_LIBRARY "")
|
set(PYTHON_LIBRARIES "")
|
||||||
set(PYTHON_LIBPATH ${PYTHON}${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config)
|
set(PYTHON_LIBPATH ${PYTHON}${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config)
|
||||||
set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework System -framework Python")
|
set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework System -framework Python")
|
||||||
endif()
|
endif()
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# PYTHON_VERSION
|
# PYTHON_VERSION
|
||||||
# PYTHON_INCLUDE_DIRS
|
# PYTHON_INCLUDE_DIRS
|
||||||
# PYTHON_LIBRARY
|
# PYTHON_LIBRARIES
|
||||||
# PYTHON_LIBPATH
|
# PYTHON_LIBPATH
|
||||||
# PYTHON_LINKFLAGS
|
# PYTHON_LINKFLAGS
|
||||||
# PYTHON_ROOT_DIR, The base directory to search for Python.
|
# PYTHON_ROOT_DIR, The base directory to search for Python.
|
||||||
@ -45,18 +45,18 @@ foreach(_CURRENT_ABI_FLAGS ${_python_ABI_FLAGS})
|
|||||||
PATH_SUFFIXES include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
PATH_SUFFIXES include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(PYTHON_LIBRARY
|
find_library(PYTHON_LIBRARIES
|
||||||
NAMES "python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}"
|
NAMES "python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}"
|
||||||
HINTS ${_python_SEARCH_DIRS}
|
HINTS ${_python_SEARCH_DIRS}
|
||||||
PATH_SUFFIXES lib64 lib
|
PATH_SUFFIXES lib64 lib
|
||||||
)
|
)
|
||||||
|
|
||||||
if((EXISTS ${PYTHON_LIBRARY}) AND (EXISTS ${PYTHON_INCLUDE_DIR}))
|
if((EXISTS ${PYTHON_LIBRARIES}) AND (EXISTS ${PYTHON_INCLUDE_DIR}))
|
||||||
break()
|
break()
|
||||||
else()
|
else()
|
||||||
# ensure we dont find values from 2 different ABI versions
|
# ensure we dont find values from 2 different ABI versions
|
||||||
unset(PYTHON_INCLUDE_DIR CACHE)
|
unset(PYTHON_INCLUDE_DIR CACHE)
|
||||||
unset(PYTHON_LIBRARY CACHE)
|
unset(PYTHON_LIBRARIES CACHE)
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
@ -70,19 +70,19 @@ unset(_python_SEARCH_DIRS)
|
|||||||
# all listed variables are TRUE
|
# all listed variables are TRUE
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibsUnix DEFAULT_MSG
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibsUnix DEFAULT_MSG
|
||||||
PYTHON_LIBRARY PYTHON_INCLUDE_DIR)
|
PYTHON_LIBRARIES PYTHON_INCLUDE_DIR)
|
||||||
|
|
||||||
|
|
||||||
if(PYTHONLIBSUNIX_FOUND)
|
if(PYTHONLIBSUNIX_FOUND)
|
||||||
# Assign cache items
|
# Assign cache items
|
||||||
set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR} CACHE STRING "")
|
set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR} CACHE STRING "")
|
||||||
set(PYTHON_LIBRARY ${PYTHON_LIBRARY} CACHE STRING "")
|
set(PYTHON_LIBRARIES ${PYTHON_LIBRARIES} CACHE STRING "")
|
||||||
# not used
|
# not used
|
||||||
# set(PYTHON_BINARY ${PYTHON_EXECUTABLE} CACHE STRING "")
|
# set(PYTHON_BINARY ${PYTHON_EXECUTABLE} CACHE STRING "")
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
PYTHON_INCLUDE_DIRS
|
PYTHON_INCLUDE_DIRS
|
||||||
PYTHON_INCLUDE_DIR
|
PYTHON_INCLUDE_DIR
|
||||||
PYTHON_LIBRARY
|
PYTHON_LIBRARIES
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,6 +1,44 @@
|
|||||||
# -*- mode: cmake; indent-tabs-mode: t; -*-
|
# -*- mode: cmake; indent-tabs-mode: t; -*-
|
||||||
# $Id$
|
# $Id$
|
||||||
|
|
||||||
|
|
||||||
|
# foo_bar.spam --> foo_barMySuffix.spam
|
||||||
|
macro(file_suffix
|
||||||
|
file_name_new file_name file_suffix
|
||||||
|
)
|
||||||
|
|
||||||
|
get_filename_component(_file_name_PATH ${file_name} PATH)
|
||||||
|
get_filename_component(_file_name_NAME_WE ${file_name} NAME_WE)
|
||||||
|
get_filename_component(_file_name_EXT ${file_name} EXT)
|
||||||
|
set(${file_name_new} "${_file_name_PATH}/${_file_name_NAME_WE}${file_suffix}${_file_name_EXT}")
|
||||||
|
|
||||||
|
unset(_file_name_PATH)
|
||||||
|
unset(_file_name_NAME_WE)
|
||||||
|
unset(_file_name_EXT)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
# usefil for adding debug suffix to library lists:
|
||||||
|
# /somepath/foo.lib --> /somepath/foo_d.lib
|
||||||
|
macro(file_list_suffix
|
||||||
|
fp_list_new fp_list fn_suffix
|
||||||
|
)
|
||||||
|
|
||||||
|
# incase of empty list
|
||||||
|
set(_fp)
|
||||||
|
set(_fp_suffixed)
|
||||||
|
|
||||||
|
set(fp_list_new)
|
||||||
|
|
||||||
|
foreach(_fp ${fp_list})
|
||||||
|
file_suffix(_fp_suffixed "${_fp}" "${fn_suffix}")
|
||||||
|
list(APPEND "${fp_list_new}" "${_fp_suffixed}")
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
unset(_fp)
|
||||||
|
unset(_fp_suffixed)
|
||||||
|
|
||||||
|
endmacro()
|
||||||
|
|
||||||
# Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
|
# Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
|
||||||
# use it instead of include_directories()
|
# use it instead of include_directories()
|
||||||
macro(blender_include_dirs
|
macro(blender_include_dirs
|
||||||
@ -163,11 +201,13 @@ macro(setup_liblinks
|
|||||||
target_link_libraries(${target} ${PYTHON_LINKFLAGS})
|
target_link_libraries(${target} ${PYTHON_LINKFLAGS})
|
||||||
|
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
|
file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
|
||||||
target_link_libraries(${target}
|
target_link_libraries(${target}
|
||||||
debug ${PYTHON_LIBRARY}_d
|
debug ${PYTHON_LIBRARIES_DEBUG}
|
||||||
optimized ${PYTHON_LIBRARY})
|
optimized ${PYTHON_LIBRARIES})
|
||||||
|
unset(PYTHON_LIBRARIES_DEBUG)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(${target} ${PYTHON_LIBRARY})
|
target_link_libraries(${target} ${PYTHON_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -216,14 +256,11 @@ macro(setup_liblinks
|
|||||||
endif()
|
endif()
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
foreach(_LOOP_VAR ${OPENEXR_LIBRARIES})
|
file_list_suffix(OPENEXR_LIBRARIES_DEBUG "${OPENEXR_LIBRARIES}" "_d")
|
||||||
string(REGEX REPLACE ".lib$" "_d.lib" _LOOP_VAR_DEBUG ${_LOOP_VAR})
|
target_link_libraries(${target}
|
||||||
target_link_libraries(${target}
|
debug ${OPENEXR_LIBRARIES_DEBUG}
|
||||||
debug ${_LOOP_VAR_DEBUG}
|
optimized ${OPENEXR_LIBRARIES})
|
||||||
optimized ${_LOOP_VAR})
|
unset(OPENEXR_LIBRARIES_DEBUG)
|
||||||
endforeach()
|
|
||||||
unset(_LOOP_VAR)
|
|
||||||
unset(_LOOP_VAR_DEBUG)
|
|
||||||
else()
|
else()
|
||||||
target_link_libraries(${target} ${OPENEXR_LIBRARIES})
|
target_link_libraries(${target} ${OPENEXR_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
@ -236,19 +273,24 @@ macro(setup_liblinks
|
|||||||
endif()
|
endif()
|
||||||
if(WITH_OPENCOLLADA)
|
if(WITH_OPENCOLLADA)
|
||||||
if(WIN32 AND NOT UNIX)
|
if(WIN32 AND NOT UNIX)
|
||||||
foreach(_LOOP_VAR ${OPENCOLLADA_LIBRARIES})
|
file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
|
||||||
target_link_libraries(${target}
|
|
||||||
debug ${_LOOP_VAR}_d
|
|
||||||
optimized ${_LOOP_VAR})
|
|
||||||
endforeach()
|
|
||||||
unset(_LOOP_VAR)
|
|
||||||
target_link_libraries(${target}
|
target_link_libraries(${target}
|
||||||
debug ${PCRE_LIB}_d
|
debug ${OPENCOLLADA_LIBRARIES_DEBUG}
|
||||||
|
optimized ${OPENCOLLADA_LIBRARIES})
|
||||||
|
unset(OPENCOLLADA_LIBRARIES_DEBUG)
|
||||||
|
|
||||||
|
file_list_suffix(PCRE_LIB_DEBUG "${PCRE_LIB}" "_d")
|
||||||
|
target_link_libraries(${target}
|
||||||
|
debug ${PCRE_LIB_DEBUG}
|
||||||
optimized ${PCRE_LIB})
|
optimized ${PCRE_LIB})
|
||||||
|
unset(PCRE_LIB_DEBUG)
|
||||||
|
|
||||||
if(EXPAT_LIB)
|
if(EXPAT_LIB)
|
||||||
|
file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
|
||||||
target_link_libraries(${target}
|
target_link_libraries(${target}
|
||||||
debug ${EXPAT_LIB}_d
|
debug ${EXPAT_LIB_DEBUG}
|
||||||
optimized ${EXPAT_LIB})
|
optimized ${EXPAT_LIB})
|
||||||
|
unset(EXPAT_LIB_DEBUG)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
target_link_libraries(${target}
|
target_link_libraries(${target}
|
||||||
|
@ -776,7 +776,7 @@ static DerivedMesh * explodeMesh(ExplodeModifierData *emd,
|
|||||||
{
|
{
|
||||||
DerivedMesh *explode, *dm=to_explode;
|
DerivedMesh *explode, *dm=to_explode;
|
||||||
MFace *mf= NULL, *mface;
|
MFace *mf= NULL, *mface;
|
||||||
ParticleSettings *part=psmd->psys->part;
|
/* ParticleSettings *part=psmd->psys->part; */ /* UNUSED */
|
||||||
ParticleSimulationData sim= {NULL};
|
ParticleSimulationData sim= {NULL};
|
||||||
ParticleData *pa=NULL, *pars=psmd->psys->particles;
|
ParticleData *pa=NULL, *pars=psmd->psys->particles;
|
||||||
ParticleKey state, birth;
|
ParticleKey state, birth;
|
||||||
|
Loading…
Reference in New Issue
Block a user