diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2f5b8240c887990f0412fd950f0586c08ce8a846..7ab5655bff4f16a1fc5b3c034f30ceddbbe23099 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,20 +24,20 @@
 # build the libs and objects in it.
 
 if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
-	if(NOT DEFINED WITH_IN_SOURCE_BUILD)
-		message(FATAL_ERROR
-			"CMake generation for blender is not allowed within the source directory!"
-			"\n Remove \"${CMAKE_SOURCE_DIR}/CMakeCache.txt\" and try again from another folder, e.g.:"
-			"\n "
-			"\n rm CMakeCache.txt"
-			"\n cd .."
-			"\n mkdir cmake-make"
-			"\n cd cmake-make"
-			"\n cmake ../blender"
-			"\n "
-			"\n Alternately define WITH_IN_SOURCE_BUILD to force this option (not recommended!)"
-		)
-	endif()
+  if(NOT DEFINED WITH_IN_SOURCE_BUILD)
+    message(FATAL_ERROR
+      "CMake generation for blender is not allowed within the source directory!"
+      "\n Remove \"${CMAKE_SOURCE_DIR}/CMakeCache.txt\" and try again from another folder, e.g.:"
+      "\n "
+      "\n rm CMakeCache.txt"
+      "\n cd .."
+      "\n mkdir cmake-make"
+      "\n cd cmake-make"
+      "\n cmake ../blender"
+      "\n "
+      "\n Alternately define WITH_IN_SOURCE_BUILD to force this option (not recommended!)"
+    )
+  endif()
 endif()
 
 cmake_minimum_required(VERSION 3.5)
@@ -46,13 +46,13 @@ cmake_minimum_required(VERSION 3.5)
 # platforms which don't hare GLVND yet. Only do it if preference was not set
 # externally.
 if(NOT DEFINED OpenGL_GL_PREFERENCE)
-	set(OpenGL_GL_PREFERENCE "LEGACY")
+  set(OpenGL_GL_PREFERENCE "LEGACY")
 endif()
 
 if(NOT EXECUTABLE_OUTPUT_PATH)
-	set(FIRST_RUN TRUE)
+  set(FIRST_RUN TRUE)
 else()
-	set(FIRST_RUN FALSE)
+  set(FIRST_RUN FALSE)
 endif()
 
 # this starts out unset
@@ -61,12 +61,12 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/build_files/cmake/platform")
 
 # avoid having empty buildtype
 if(NOT DEFINED CMAKE_BUILD_TYPE_INIT)
-	set(CMAKE_BUILD_TYPE_INIT "Release")
+  set(CMAKE_BUILD_TYPE_INIT "Release")
 endif()
 
 # Omit superfluous "Up-to-date" messages.
 if(NOT DEFINED CMAKE_INSTALL_MESSAGE)
-	set(CMAKE_INSTALL_MESSAGE "LAZY")
+  set(CMAKE_INSTALL_MESSAGE "LAZY")
 endif()
 
 # quiet output for Makefiles, 'make -s' helps too
@@ -74,10 +74,10 @@ endif()
 
 # global compile definitions since add_definitions() adds for all.
 set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
-	$<$<CONFIG:Debug>:DEBUG;_DEBUG>
-	$<$<CONFIG:Release>:NDEBUG>
-	$<$<CONFIG:MinSizeRel>:NDEBUG>
-	$<$<CONFIG:RelWithDebInfo>:NDEBUG>
+  $<$<CONFIG:Debug>:DEBUG;_DEBUG>
+  $<$<CONFIG:Release>:NDEBUG>
+  $<$<CONFIG:MinSizeRel>:NDEBUG>
+  $<$<CONFIG:RelWithDebInfo>:NDEBUG>
 )
 
 #-----------------------------------------------------------------------------
@@ -118,9 +118,9 @@ enable_testing()
 set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE INTERNAL "" FORCE)
 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE INTERNAL "" FORCE)
 if(MSVC)
-	set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/$<CONFIG>/ CACHE INTERNAL "" FORCE)
+  set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/$<CONFIG>/ CACHE INTERNAL "" FORCE)
 else()
-	set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/ CACHE INTERNAL "" FORCE)
+  set(TESTS_OUTPUT_DIR ${EXECUTABLE_OUTPUT_PATH}/tests/ CACHE INTERNAL "" FORCE)
 endif()
 
 #-----------------------------------------------------------------------------
@@ -137,55 +137,55 @@ set(_init_vars)
 
 # initialize to ON
 macro(option_defaults_init)
-	foreach(_var ${ARGV})
-		set(${_var} ON)
-		list(APPEND _init_vars "${_var}")
-	endforeach()
-	unset(_var)
+  foreach(_var ${ARGV})
+    set(${_var} ON)
+    list(APPEND _init_vars "${_var}")
+  endforeach()
+  unset(_var)
 endmacro()
 
 # remove from namespace
 macro(option_defaults_clear)
-	foreach(_var ${_init_vars})
-		unset(${_var})
-	endforeach()
-	unset(_var)
-	unset(_init_vars)
+  foreach(_var ${_init_vars})
+    unset(${_var})
+  endforeach()
+  unset(_var)
+  unset(_init_vars)
 endmacro()
 
 
 # values to initialize WITH_****
 option_defaults_init(
-	_init_BUILDINFO
-	_init_CODEC_FFMPEG
-	_init_CYCLES_OSL
-	_init_IMAGE_OPENEXR
-	_init_INPUT_NDOF
-	_init_JACK
-	_init_OPENCOLLADA
-	_init_OPENCOLORIO
-	_init_SDL
-	_init_FFTW3
-	_init_OPENSUBDIV
+  _init_BUILDINFO
+  _init_CODEC_FFMPEG
+  _init_CYCLES_OSL
+  _init_IMAGE_OPENEXR
+  _init_INPUT_NDOF
+  _init_JACK
+  _init_OPENCOLLADA
+  _init_OPENCOLORIO
+  _init_SDL
+  _init_FFTW3
+  _init_OPENSUBDIV
 )
 
 # customize...
 if(UNIX AND NOT APPLE)
-	# some of these libraries are problematic on Linux
-	# disable less important dependencies by default
-	set(_init_CODEC_FFMPEG                   OFF)
-	set(_init_CYCLES_OSL                     OFF)
-	set(_init_IMAGE_OPENEXR                  OFF)
-	set(_init_JACK                           OFF)
-	set(_init_OPENCOLLADA                    OFF)
-	set(_init_OPENCOLORIO                    OFF)
-	set(_init_SDL                            OFF)
-	set(_init_FFTW3                          OFF)
-	set(_init_OPENSUBDIV                     OFF)
+  # some of these libraries are problematic on Linux
+  # disable less important dependencies by default
+  set(_init_CODEC_FFMPEG                   OFF)
+  set(_init_CYCLES_OSL                     OFF)
+  set(_init_IMAGE_OPENEXR                  OFF)
+  set(_init_JACK                           OFF)
+  set(_init_OPENCOLLADA                    OFF)
+  set(_init_OPENCOLORIO                    OFF)
+  set(_init_SDL                            OFF)
+  set(_init_FFTW3                          OFF)
+  set(_init_OPENSUBDIV                     OFF)
 elseif(WIN32)
-	set(_init_JACK                           OFF)
+  set(_init_JACK                           OFF)
 elseif(APPLE)
-	set(_init_JACK                           OFF)
+  set(_init_JACK                           OFF)
 endif()
 
 
@@ -194,7 +194,7 @@ endif()
 
 # First platform specific non-cached vars
 if(UNIX AND NOT (APPLE OR HAIKU))
-	set(WITH_X11 ON)
+  set(WITH_X11 ON)
 endif()
 
 # Blender internal features
@@ -212,13 +212,13 @@ option(WITH_PYTHON_SAFETY "Enable internal API error checking to track invalid d
 mark_as_advanced(WITH_PYTHON_SAFETY)
 option(WITH_PYTHON_MODULE "Enable building as a python module which runs without a user interface, like running regular blender in background mode (experimental, only enable for development), installs to PYTHON_SITE_PACKAGES (or CMAKE_INSTALL_PREFIX if WITH_INSTALL_PORTABLE is enabled)." OFF)
 if(APPLE)
-	option(WITH_PYTHON_FRAMEWORK "Enable building using the Python available in the framework (OSX only)" OFF)
+  option(WITH_PYTHON_FRAMEWORK "Enable building using the Python available in the framework (OSX only)" OFF)
 endif()
 
 option(WITH_BUILDINFO     "Include extra build details (only disable for development & faster builds)" ${_init_BUILDINFO})
 if(${CMAKE_VERSION} VERSION_LESS 2.8.8)
-	# add_library OBJECT arg unsupported
-	set(WITH_BUILDINFO OFF)
+  # add_library OBJECT arg unsupported
+  set(WITH_BUILDINFO OFF)
 endif()
 set(BUILDINFO_OVERRIDE_DATE "" CACHE STRING "Use instead of the current date for reproducible builds (empty string disables this option)")
 set(BUILDINFO_OVERRIDE_TIME "" CACHE STRING "Use instead of the current time for reproducible builds (empty string disables this option)")
@@ -253,7 +253,7 @@ option(WITH_GHOST_SDL    "Enable building Blender against SDL for windowing rath
 mark_as_advanced(WITH_GHOST_SDL)
 
 if(WITH_X11)
-	option(WITH_GHOST_XDND    "Enable drag'n'drop support on X11 using XDND protocol" ON)
+  option(WITH_GHOST_XDND    "Enable drag'n'drop support on X11 using XDND protocol" ON)
 endif()
 
 # Misc...
@@ -266,34 +266,34 @@ mark_as_advanced(WITH_AUDASPACE)
 mark_as_advanced(WITH_SYSTEM_AUDASPACE)
 
 if(NOT WITH_AUDASPACE)
-	set(WITH_SYSTEM_AUDASPACE OFF)
+  set(WITH_SYSTEM_AUDASPACE OFF)
 endif()
 
 option(WITH_OPENMP        "Enable OpenMP (has to be supported by the compiler)" ON)
 if(UNIX AND NOT APPLE)
-	option(WITH_OPENMP_STATIC "Link OpenMP statically (only used by the release environment)" OFF)
-	mark_as_advanced(WITH_OPENMP_STATIC)
+  option(WITH_OPENMP_STATIC "Link OpenMP statically (only used by the release environment)" OFF)
+  mark_as_advanced(WITH_OPENMP_STATIC)
 endif()
 
 if(WITH_X11)
-	option(WITH_X11_XINPUT    "Enable X11 Xinput (tablet support and unicode input)"  ON)
-	option(WITH_X11_XF86VMODE "Enable X11 video mode switching"                       ON)
-	option(WITH_X11_XFIXES    "Enable X11 XWayland cursor warping workaround"         ON)
-	option(WITH_X11_ALPHA     "Enable X11 transparent background"                     ON)
+  option(WITH_X11_XINPUT    "Enable X11 Xinput (tablet support and unicode input)"  ON)
+  option(WITH_X11_XF86VMODE "Enable X11 video mode switching"                       ON)
+  option(WITH_X11_XFIXES    "Enable X11 XWayland cursor warping workaround"         ON)
+  option(WITH_X11_ALPHA     "Enable X11 transparent background"                     ON)
 endif()
 
 if(UNIX AND NOT APPLE)
-	option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
-	option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system"           ON)
+  option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
+  option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system"           ON)
 else()
-	# not an option for other OS's
-	set(WITH_SYSTEM_GLEW OFF)
-	set(WITH_SYSTEM_GLES OFF)
+  # not an option for other OS's
+  set(WITH_SYSTEM_GLEW OFF)
+  set(WITH_SYSTEM_GLES OFF)
 endif()
 
 
 if(UNIX AND NOT APPLE)
-	option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
+  option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
 endif()
 
 
@@ -332,17 +332,17 @@ option(WITH_SDL           "Enable SDL for sound and joystick support" ${_init_SD
 option(WITH_OPENAL        "Enable OpenAL Support (http://www.openal.org)" ON)
 option(WITH_JACK          "Enable JACK Support (http://www.jackaudio.org)" ${_init_JACK})
 if(UNIX AND NOT APPLE)
-	option(WITH_JACK_DYNLOAD  "Enable runtime dynamic JACK libraries loading" OFF)
+  option(WITH_JACK_DYNLOAD  "Enable runtime dynamic JACK libraries loading" OFF)
 endif()
 if(UNIX AND NOT APPLE)
-	option(WITH_SDL_DYNLOAD  "Enable runtime dynamic SDL libraries loading" OFF)
+  option(WITH_SDL_DYNLOAD  "Enable runtime dynamic SDL libraries loading" OFF)
 endif()
 
 # Compression
 option(WITH_LZO           "Enable fast LZO compression (used for pointcache)" ON)
 option(WITH_LZMA          "Enable best LZMA compression, (used for pointcache)" ON)
 if(UNIX AND NOT APPLE)
-	option(WITH_SYSTEM_LZO    "Use the system LZO library" OFF)
+  option(WITH_SYSTEM_LZO    "Use the system LZO library" OFF)
 endif()
 option(WITH_DRACO         "Enable Draco mesh compression Python module (used for glTF)" ON)
 
@@ -362,65 +362,65 @@ option(WITH_FREESTYLE     "Enable Freestyle (advanced edges rendering)" ON)
 
 # Misc
 if(WIN32)
-	option(WITH_INPUT_IME "Enable Input Method Editor (IME) for complex Asian character input" ON)
+  option(WITH_INPUT_IME "Enable Input Method Editor (IME) for complex Asian character input" ON)
 endif()
 option(WITH_INPUT_NDOF "Enable NDOF input devices (SpaceNavigator and friends)" ${_init_INPUT_NDOF})
-option(WITH_RAYOPTIMIZATION	"Enable use of SIMD (SSE) optimizations for the raytracer" ON)
+option(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
 if(UNIX AND NOT APPLE)
-	option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
-	option(WITH_STATIC_LIBS "Try to link with static libraries, as much as possible, to make blender more portable across distributions" OFF)
-	if(WITH_STATIC_LIBS)
-		option(WITH_BOOST_ICU "Boost uses ICU library (required for linking with static Boost built with libicu)." OFF)
-		mark_as_advanced(WITH_BOOST_ICU)
-	endif()
+  option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
+  option(WITH_STATIC_LIBS "Try to link with static libraries, as much as possible, to make blender more portable across distributions" OFF)
+  if(WITH_STATIC_LIBS)
+    option(WITH_BOOST_ICU "Boost uses ICU library (required for linking with static Boost built with libicu)." OFF)
+    mark_as_advanced(WITH_BOOST_ICU)
+  endif()
 endif()
 
 option(WITH_PYTHON_INSTALL       "Copy system python into the blender install folder" ON)
 if(WIN32 OR APPLE)
-	# Windows and macOS have this bundled with Python libraries.
+  # Windows and macOS have this bundled with Python libraries.
 elseif(WITH_PYTHON_INSTALL OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
-	set(PYTHON_NUMPY_PATH            "" CACHE PATH "Path to python site-packages or dist-packages containing 'numpy' module")
-	mark_as_advanced(PYTHON_NUMPY_PATH)
-	set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
-	mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
+  set(PYTHON_NUMPY_PATH            "" CACHE PATH "Path to python site-packages or dist-packages containing 'numpy' module")
+  mark_as_advanced(PYTHON_NUMPY_PATH)
+  set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
+  mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
 endif()
 if(WITH_PYTHON_INSTALL)
-	option(WITH_PYTHON_INSTALL_NUMPY "Copy system numpy into the blender install folder"  ON)
+  option(WITH_PYTHON_INSTALL_NUMPY "Copy system numpy into the blender install folder"  ON)
 
-	if(UNIX AND NOT APPLE)
-		option(WITH_PYTHON_INSTALL_REQUESTS "Copy system requests into the blender install folder" ON)
-		set(PYTHON_REQUESTS_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'requests' module")
-		mark_as_advanced(PYTHON_REQUESTS_PATH)
-	endif()
+  if(UNIX AND NOT APPLE)
+    option(WITH_PYTHON_INSTALL_REQUESTS "Copy system requests into the blender install folder" ON)
+    set(PYTHON_REQUESTS_PATH "" CACHE PATH "Path to python site-packages or dist-packages containing 'requests' module")
+    mark_as_advanced(PYTHON_REQUESTS_PATH)
+  endif()
 endif()
 
 option(WITH_CPU_SSE              "Enable SIMD instruction if they're detected on the host machine" ON)
 mark_as_advanced(WITH_CPU_SSE)
 
 # Cycles
-option(WITH_CYCLES					"Enable Cycles Render Engine" ON)
-option(WITH_CYCLES_STANDALONE		"Build Cycles standalone application" OFF)
-option(WITH_CYCLES_STANDALONE_GUI	"Build Cycles standalone with GUI" OFF)
-option(WITH_CYCLES_OSL				"Build Cycles with OSL support" ${_init_CYCLES_OSL})
-option(WITH_CYCLES_EMBREE			"Build Cycles with Embree support" OFF)
-option(WITH_CYCLES_CUDA_BINARIES	"Build Cycles CUDA binaries" OFF)
-option(WITH_CYCLES_CUBIN_COMPILER	"Build cubins with nvrtc based compiler instead of nvcc" OFF)
+option(WITH_CYCLES                  "Enable Cycles Render Engine" ON)
+option(WITH_CYCLES_STANDALONE       "Build Cycles standalone application" OFF)
+option(WITH_CYCLES_STANDALONE_GUI   "Build Cycles standalone with GUI" OFF)
+option(WITH_CYCLES_OSL              "Build Cycles with OSL support" ${_init_CYCLES_OSL})
+option(WITH_CYCLES_EMBREE           "Build Cycles with Embree support" OFF)
+option(WITH_CYCLES_CUDA_BINARIES    "Build Cycles CUDA binaries" OFF)
+option(WITH_CYCLES_CUBIN_COMPILER   "Build cubins with nvrtc based compiler instead of nvcc" OFF)
 option(WITH_CYCLES_CUDA_BUILD_SERIAL "Build cubins one after another (useful on machines with limited RAM)" OFF)
 mark_as_advanced(WITH_CYCLES_CUDA_BUILD_SERIAL)
 set(CYCLES_CUDA_BINARIES_ARCH sm_30 sm_35 sm_37 sm_50 sm_52 sm_60 sm_61 sm_70 sm_75 CACHE STRING "CUDA architectures to build binaries for")
 mark_as_advanced(CYCLES_CUDA_BINARIES_ARCH)
 unset(PLATFORM_DEFAULT)
-option(WITH_CYCLES_LOGGING	"Build Cycles with logging support" ON)
-option(WITH_CYCLES_DEBUG	"Build Cycles with extra debug capabilities" OFF)
-option(WITH_CYCLES_NATIVE_ONLY	"Build Cycles with native kernel only (which fits current CPU, use for development only)" OFF)
+option(WITH_CYCLES_LOGGING  "Build Cycles with logging support" ON)
+option(WITH_CYCLES_DEBUG    "Build Cycles with extra debug capabilities" OFF)
+option(WITH_CYCLES_NATIVE_ONLY  "Build Cycles with native kernel only (which fits current CPU, use for development only)" OFF)
 mark_as_advanced(WITH_CYCLES_CUBIN_COMPILER)
 mark_as_advanced(WITH_CYCLES_LOGGING)
 mark_as_advanced(WITH_CYCLES_DEBUG)
 mark_as_advanced(WITH_CYCLES_NATIVE_ONLY)
 
-option(WITH_CYCLES_DEVICE_CUDA				"Enable Cycles CUDA compute support" ON)
-option(WITH_CYCLES_DEVICE_OPENCL			"Enable Cycles OpenCL compute support" ON)
-option(WITH_CYCLES_NETWORK				"Enable Cycles compute over network support (EXPERIMENTAL and unfinished)" OFF)
+option(WITH_CYCLES_DEVICE_CUDA              "Enable Cycles CUDA compute support" ON)
+option(WITH_CYCLES_DEVICE_OPENCL            "Enable Cycles OpenCL compute support" ON)
+option(WITH_CYCLES_NETWORK              "Enable Cycles compute over network support (EXPERIMENTAL and unfinished)" OFF)
 mark_as_advanced(WITH_CYCLES_DEVICE_CUDA)
 mark_as_advanced(WITH_CYCLES_DEVICE_OPENCL)
 mark_as_advanced(WITH_CYCLES_NETWORK)
@@ -429,11 +429,11 @@ option(WITH_CUDA_DYNLOAD "Dynamically load CUDA libraries at runtime" ON)
 mark_as_advanced(WITH_CUDA_DYNLOAD)
 
 # LLVM
-option(WITH_LLVM					"Use LLVM" OFF)
+option(WITH_LLVM                    "Use LLVM" OFF)
 if(APPLE)
-	option(LLVM_STATIC					"Link with LLVM static libraries" ON) # we prefer static llvm build on Apple, dyn build possible though
+  option(LLVM_STATIC                  "Link with LLVM static libraries" ON) # we prefer static llvm build on Apple, dyn build possible though
 else()
-	option(LLVM_STATIC					"Link with LLVM static libraries" OFF)
+  option(LLVM_STATIC                  "Link with LLVM static libraries" OFF)
 endif()
 mark_as_advanced(LLVM_STATIC)
 
@@ -452,7 +452,7 @@ mark_as_advanced(WITH_CXX_GUARDEDALLOC)
 option(WITH_ASSERT_ABORT "Call abort() when raising an assertion through BLI_assert()" ON)
 mark_as_advanced(WITH_ASSERT_ABORT)
 
-option(WITH_BOOST					"Enable features depending on boost" ON)
+option(WITH_BOOST                   "Enable features depending on boost" ON)
 
 # Unit testsing
 option(WITH_GTESTS "Enable GTest unit testing" OFF)
@@ -462,7 +462,7 @@ option(WITH_OPENGL_DRAW_TESTS "Enable OpenGL UI drawing related unit testing (Ex
 
 # Documentation
 if(UNIX AND NOT APPLE)
-	option(WITH_DOC_MANPAGE "Create a manual page (Unix manpage)" OFF)
+  option(WITH_DOC_MANPAGE "Create a manual page (Unix manpage)" OFF)
 endif()
 
 
@@ -474,39 +474,39 @@ option(WITH_GL_EGL              "Use the EGL OpenGL system library instead of th
 option(WITH_GL_PROFILE_ES20     "Support using OpenGL ES 2.0. (thru either EGL or the AGL/WGL/XGL 'es20' profile)"                                  OFF)
 
 mark_as_advanced(
-	WITH_OPENGL
-	WITH_GLEW_ES
-	WITH_GL_EGL
-	WITH_GL_PROFILE_ES20
+  WITH_OPENGL
+  WITH_GLEW_ES
+  WITH_GL_EGL
+  WITH_GL_PROFILE_ES20
 )
 
 if(WIN32)
-	option(WITH_GL_ANGLE "Link with the ANGLE library, an OpenGL ES 2.0 implementation based on Direct3D, instead of the system OpenGL library." OFF)
-	mark_as_advanced(WITH_GL_ANGLE)
+  option(WITH_GL_ANGLE "Link with the ANGLE library, an OpenGL ES 2.0 implementation based on Direct3D, instead of the system OpenGL library." OFF)
+  mark_as_advanced(WITH_GL_ANGLE)
 endif()
 
 if(WITH_GLEW_ES AND WITH_SYSTEM_GLEW)
-	message(WARNING Ignoring WITH_SYSTEM_GLEW and using WITH_GLEW_ES)
-	set(WITH_SYSTEM_GLEW OFF)
+  message(WARNING Ignoring WITH_SYSTEM_GLEW and using WITH_GLEW_ES)
+  set(WITH_SYSTEM_GLEW OFF)
 endif()
 
 if(WIN32)
-	getDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
-	set(CPACK_INSTALL_PREFIX ${CMAKE_GENERIC_PROGRAM_FILES}/${})
+  getDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
+  set(CPACK_INSTALL_PREFIX ${CMAKE_GENERIC_PROGRAM_FILES}/${})
 endif()
 
 # Compiler toolchain
 if(CMAKE_COMPILER_IS_GNUCC)
-	option(WITH_LINKER_GOLD "Use ld.gold linker which is usually faster than ld.bfd" ON)
-	mark_as_advanced(WITH_LINKER_GOLD)
+  option(WITH_LINKER_GOLD "Use ld.gold linker which is usually faster than ld.bfd" ON)
+  mark_as_advanced(WITH_LINKER_GOLD)
 endif()
 
 if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
-	option(WITH_COMPILER_ASAN "Build and link against address sanitizer (only for Debug & RelWithDebInfo targets)." OFF)
-	mark_as_advanced(WITH_COMPILER_ASAN)
+  option(WITH_COMPILER_ASAN "Build and link against address sanitizer (only for Debug & RelWithDebInfo targets)." OFF)
+  mark_as_advanced(WITH_COMPILER_ASAN)
 
-	if(WITH_COMPILER_ASAN)
-		set(_asan_defaults "\
+  if(WITH_COMPILER_ASAN)
+    set(_asan_defaults "\
 -fsanitize=address \
 -fsanitize=bool \
 -fsanitize=bounds \
@@ -521,27 +521,27 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
 -fno-sanitize=alignment \
 ")
 
-		if(NOT MSVC) # not all sanitizers are supported with clang-cl, these two however are very vocal about it
-			set(_asan_defaults "${_asan_defaults} -fsanitize=leak -fsanitize=object-size" )
-		endif()
-		set(COMPILER_ASAN_CFLAGS "${_asan_defaults}" CACHE STRING "C flags for address sanitizer")
-		mark_as_advanced(COMPILER_ASAN_CFLAGS)
-		set(COMPILER_ASAN_CXXFLAGS "${_asan_defaults}" CACHE STRING "C++ flags for address sanitizer")
-		mark_as_advanced(COMPILER_ASAN_CXXFLAGS)
-
-		unset(_asan_defaults)
-
-		if(NOT MSVC)
-			find_library(COMPILER_ASAN_LIBRARY asan ${CMAKE_C_IMPLICIT_LINK_DIRECTORIES})
-		else()
-			find_library( COMPILER_ASAN_LIBRARY NAMES clang_rt.asan-x86_64
-				PATHS
-				[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/7.0.0/lib/windows
-				[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/6.0.0/lib/windows
-			)
-		endif()
-		mark_as_advanced(COMPILER_ASAN_LIBRARY)
-	endif()
+    if(NOT MSVC) # not all sanitizers are supported with clang-cl, these two however are very vocal about it
+      set(_asan_defaults "${_asan_defaults} -fsanitize=leak -fsanitize=object-size" )
+    endif()
+    set(COMPILER_ASAN_CFLAGS "${_asan_defaults}" CACHE STRING "C flags for address sanitizer")
+    mark_as_advanced(COMPILER_ASAN_CFLAGS)
+    set(COMPILER_ASAN_CXXFLAGS "${_asan_defaults}" CACHE STRING "C++ flags for address sanitizer")
+    mark_as_advanced(COMPILER_ASAN_CXXFLAGS)
+
+    unset(_asan_defaults)
+
+    if(NOT MSVC)
+      find_library(COMPILER_ASAN_LIBRARY asan ${CMAKE_C_IMPLICIT_LINK_DIRECTORIES})
+    else()
+      find_library( COMPILER_ASAN_LIBRARY NAMES clang_rt.asan-x86_64
+        PATHS
+        [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/7.0.0/lib/windows
+        [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\LLVM\\LLVM;]/lib/clang/6.0.0/lib/windows
+      )
+    endif()
+    mark_as_advanced(COMPILER_ASAN_LIBRARY)
+  endif()
 endif()
 
 # Dependency graph
@@ -549,24 +549,24 @@ option(WITH_LEGACY_DEPSGRAPH "Build Blender with legacy dependency graph" ON)
 mark_as_advanced(WITH_LEGACY_DEPSGRAPH)
 
 if(WIN32)
-	# Use hardcoded paths or find_package to find externals
-	option(WITH_WINDOWS_FIND_MODULES "Use find_package to locate libraries" OFF)
-	mark_as_advanced(WITH_WINDOWS_FIND_MODULES)
+  # Use hardcoded paths or find_package to find externals
+  option(WITH_WINDOWS_FIND_MODULES "Use find_package to locate libraries" OFF)
+  mark_as_advanced(WITH_WINDOWS_FIND_MODULES)
 
-	option(WITH_WINDOWS_CODESIGN "Use signtool to sign the final binary." OFF)
-	mark_as_advanced(WITH_WINDOWS_CODESIGN)
+  option(WITH_WINDOWS_CODESIGN "Use signtool to sign the final binary." OFF)
+  mark_as_advanced(WITH_WINDOWS_CODESIGN)
 
-	set(WINDOWS_CODESIGN_PFX CACHE FILEPATH  "Path to pfx file to use for codesigning.")
-	mark_as_advanced(WINDOWS_CODESIGN_PFX)
+  set(WINDOWS_CODESIGN_PFX CACHE FILEPATH  "Path to pfx file to use for codesigning.")
+  mark_as_advanced(WINDOWS_CODESIGN_PFX)
 
-	set(WINDOWS_CODESIGN_PFX_PASSWORD CACHE STRING  "password for pfx file used for codesigning.")
-	mark_as_advanced(WINDOWS_CODESIGN_PFX_PASSWORD)
+  set(WINDOWS_CODESIGN_PFX_PASSWORD CACHE STRING  "password for pfx file used for codesigning.")
+  mark_as_advanced(WINDOWS_CODESIGN_PFX_PASSWORD)
 
-	option(WINDOWS_USE_VISUAL_STUDIO_FOLDERS "Organize the visual studio project according to source folders." ON)
-	mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
+  option(WINDOWS_USE_VISUAL_STUDIO_FOLDERS "Organize the visual studio project according to source folders." ON)
+  mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
 
-	option(WINDOWS_PYTHON_DEBUG "Include the files needed for debugging python scripts with visual studio 2017+." OFF)
-	mark_as_advanced(WINDOWS_PYTHON_DEBUG)
+  option(WINDOWS_PYTHON_DEBUG "Include the files needed for debugging python scripts with visual studio 2017+." OFF)
+  mark_as_advanced(WINDOWS_PYTHON_DEBUG)
 endif()
 
 # avoid using again
@@ -579,15 +579,15 @@ option_defaults_clear()
 # By default we want to install to the directory we are compiling our executables
 # unless specified otherwise, which we currently do not allow
 if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-	if(WIN32)
-		set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
-	elseif(APPLE)
-		set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
-	else()
-		if(WITH_INSTALL_PORTABLE)
-			set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH} CACHE PATH "default install path" FORCE)
-		endif()
-	endif()
+  if(WIN32)
+    set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
+  elseif(APPLE)
+    set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE} CACHE PATH "default install path" FORCE)
+  else()
+    if(WITH_INSTALL_PORTABLE)
+      set(CMAKE_INSTALL_PREFIX ${EXECUTABLE_OUTPUT_PATH} CACHE PATH "default install path" FORCE)
+    endif()
+  endif()
 endif()
 
 
@@ -595,7 +595,7 @@ endif()
 # Apple
 
 if(APPLE)
-	include(platform_apple_xcode)
+  include(platform_apple_xcode)
 endif()
 
 
@@ -603,140 +603,140 @@ endif()
 # Check for conflicting/unsupported configurations
 
 if(NOT WITH_BLENDER AND NOT WITH_CYCLES_STANDALONE)
-	message(FATAL_ERROR
-		"At least one of WITH_BLENDER or WITH_CYCLES_STANDALONE "
-		"must be enabled, nothing to do!"
-	)
+  message(FATAL_ERROR
+    "At least one of WITH_BLENDER or WITH_CYCLES_STANDALONE "
+    "must be enabled, nothing to do!"
+  )
 endif()
 
 if(NOT WITH_AUDASPACE)
-	if(WITH_OPENAL)
-		message(WARNING "WITH_OPENAL requires WITH_AUDASPACE which is disabled")
-		set(WITH_OPENAL OFF)
-	endif()
-	if(WITH_JACK)
-		message(WARNING "WITH_JACK requires WITH_AUDASPACE which is disabled")
-		set(WITH_JACK OFF)
-	endif()
+  if(WITH_OPENAL)
+    message(WARNING "WITH_OPENAL requires WITH_AUDASPACE which is disabled")
+    set(WITH_OPENAL OFF)
+  endif()
+  if(WITH_JACK)
+    message(WARNING "WITH_JACK requires WITH_AUDASPACE which is disabled")
+    set(WITH_JACK OFF)
+  endif()
 endif()
 
 if(NOT WITH_SDL AND WITH_GHOST_SDL)
-	message(FATAL_ERROR "WITH_GHOST_SDL requires WITH_SDL")
+  message(FATAL_ERROR "WITH_GHOST_SDL requires WITH_SDL")
 endif()
 
 # python module, needs some different options
 if(WITH_PYTHON_MODULE AND WITH_PYTHON_INSTALL)
-	message(FATAL_ERROR "WITH_PYTHON_MODULE requires WITH_PYTHON_INSTALL to be OFF")
+  message(FATAL_ERROR "WITH_PYTHON_MODULE requires WITH_PYTHON_INSTALL to be OFF")
 endif()
 
 
 # may as well build python module without a UI
 if(WITH_PYTHON_MODULE)
-	set(WITH_HEADLESS ON)
+  set(WITH_HEADLESS ON)
 endif()
 
 if(NOT WITH_PYTHON)
-	set(WITH_CYCLES OFF)
-	set(WITH_DRACO OFF)
+  set(WITH_CYCLES OFF)
+  set(WITH_DRACO OFF)
 endif()
 
 if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
-	message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
-	set(WITH_DRACO OFF)
+  message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
+  set(WITH_DRACO OFF)
 endif()
 
 # enable boost for cycles, audaspace or i18n
 # otherwise if the user disabled
 if(NOT WITH_BOOST)
-	# Explicitly disabled. so disable all deps.
-	macro(set_and_warn
-		_setting _val)
-		if(${${_setting}})
-			message(STATUS "'WITH_BOOST' is disabled: forcing 'set(${_setting} ${_val})'")
-		endif()
-		set(${_setting} ${_val})
-	endmacro()
-
-	set_and_warn(WITH_CYCLES         OFF)
-	set_and_warn(WITH_INTERNATIONAL  OFF)
-	set_and_warn(WITH_OPENVDB        OFF)
-	set_and_warn(WITH_OPENCOLORIO    OFF)
+  # Explicitly disabled. so disable all deps.
+  macro(set_and_warn
+    _setting _val)
+    if(${${_setting}})
+      message(STATUS "'WITH_BOOST' is disabled: forcing 'set(${_setting} ${_val})'")
+    endif()
+    set(${_setting} ${_val})
+  endmacro()
+
+  set_and_warn(WITH_CYCLES         OFF)
+  set_and_warn(WITH_INTERNATIONAL  OFF)
+  set_and_warn(WITH_OPENVDB        OFF)
+  set_and_warn(WITH_OPENCOLORIO    OFF)
 elseif(WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
        WITH_OPENVDB OR WITH_OPENCOLORIO)
-	# Keep enabled
+  # Keep enabled
 else()
-	# Disable boost if not needed.
-	set(WITH_BOOST OFF)
+  # Disable boost if not needed.
+  set(WITH_BOOST OFF)
 endif()
 
 # auto enable openimageio for cycles
 if(WITH_CYCLES)
-	set(WITH_OPENIMAGEIO ON)
+  set(WITH_OPENIMAGEIO ON)
 
-	# auto enable llvm for cycles_osl
-	if(WITH_CYCLES_OSL)
-		set(WITH_LLVM ON CACHE BOOL "" FORCE)
-	endif()
+  # auto enable llvm for cycles_osl
+  if(WITH_CYCLES_OSL)
+    set(WITH_LLVM ON CACHE BOOL "" FORCE)
+  endif()
 else()
-	set(WITH_CYCLES_OSL OFF)
+  set(WITH_CYCLES_OSL OFF)
 endif()
 
 # auto enable openimageio linking dependencies
 if(WITH_OPENIMAGEIO)
-	set(WITH_IMAGE_OPENEXR ON)
-	set(WITH_IMAGE_TIFF ON)
+  set(WITH_IMAGE_OPENEXR ON)
+  set(WITH_IMAGE_TIFF ON)
 endif()
 
 # auto enable alembic linking dependencies
 if(WITH_ALEMBIC)
-	set(WITH_IMAGE_OPENEXR ON)
+  set(WITH_IMAGE_OPENEXR ON)
 endif()
 
 # don't store paths to libs for portable distribution
 if(WITH_INSTALL_PORTABLE)
-	set(CMAKE_SKIP_BUILD_RPATH TRUE)
+  set(CMAKE_SKIP_BUILD_RPATH TRUE)
 endif()
 
 if(WITH_GHOST_SDL OR WITH_HEADLESS)
-	set(WITH_X11           OFF)
-	set(WITH_X11_XINPUT    OFF)
-	set(WITH_X11_XF86VMODE OFF)
-	set(WITH_X11_XFIXES    OFF)
-	set(WITH_X11_ALPHA     OFF)
-	set(WITH_GHOST_XDND    OFF)
-	set(WITH_INPUT_IME     OFF)
+  set(WITH_X11           OFF)
+  set(WITH_X11_XINPUT    OFF)
+  set(WITH_X11_XF86VMODE OFF)
+  set(WITH_X11_XFIXES    OFF)
+  set(WITH_X11_ALPHA     OFF)
+  set(WITH_GHOST_XDND    OFF)
+  set(WITH_INPUT_IME     OFF)
 endif()
 
 if(WITH_CPU_SSE)
-	TEST_SSE_SUPPORT(COMPILER_SSE_FLAG COMPILER_SSE2_FLAG)
+  TEST_SSE_SUPPORT(COMPILER_SSE_FLAG COMPILER_SSE2_FLAG)
 else()
-	message(STATUS "SSE and SSE2 optimizations are DISABLED!")
-	set(COMPILER_SSE_FLAG)
-	set(COMPILER_SSE2_FLAG)
+  message(STATUS "SSE and SSE2 optimizations are DISABLED!")
+  set(COMPILER_SSE_FLAG)
+  set(COMPILER_SSE2_FLAG)
 endif()
 
 if(WITH_BUILDINFO)
-	find_package(Git)
-	if(NOT GIT_FOUND)
-		message(WARNING "Git was not found, disabling WITH_BUILDINFO")
-		set(WITH_BUILDINFO OFF)
-	endif()
+  find_package(Git)
+  if(NOT GIT_FOUND)
+    message(WARNING "Git was not found, disabling WITH_BUILDINFO")
+    set(WITH_BUILDINFO OFF)
+  endif()
 endif()
 
 if(WITH_AUDASPACE)
-	if(NOT WITH_SYSTEM_AUDASPACE)
-		set(AUDASPACE_C_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings/C" "${CMAKE_BINARY_DIR}/extern/audaspace")
-		set(AUDASPACE_PY_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings")
-	endif()
+  if(NOT WITH_SYSTEM_AUDASPACE)
+    set(AUDASPACE_C_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings/C" "${CMAKE_BINARY_DIR}/extern/audaspace")
+    set(AUDASPACE_PY_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/audaspace/bindings")
+  endif()
 endif()
 
 # Auto-enable CUDA dynload if toolkit is not found.
 if(NOT WITH_CUDA_DYNLOAD)
-	find_package(CUDA)
-	if (NOT CUDA_FOUND)
-		message("CUDA toolkit not found, using dynamic runtime loading of libraries instead")
-		set(WITH_CUDA_DYNLOAD ON)
-	endif()
+  find_package(CUDA)
+  if (NOT CUDA_FOUND)
+    message("CUDA toolkit not found, using dynamic runtime loading of libraries instead")
+    set(WITH_CUDA_DYNLOAD ON)
+  endif()
 endif()
 
 #-----------------------------------------------------------------------------
@@ -747,35 +747,35 @@ endif()
 #       since uninitialized git submodules will give blank dirs
 
 if(WITH_INTERNATIONAL)
-	if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/datafiles/locale/languages")
-		message(WARNING
-			"Translation path '${CMAKE_SOURCE_DIR}/release/datafiles/locale' is missing, "
-			"This is a 'git submodule', which are known not to work with bridges to other version "
-			"control systems, disabling 'WITH_INTERNATIONAL'."
-		)
-		set(WITH_INTERNATIONAL OFF)
-	endif()
+  if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/datafiles/locale/languages")
+    message(WARNING
+      "Translation path '${CMAKE_SOURCE_DIR}/release/datafiles/locale' is missing, "
+      "This is a 'git submodule', which are known not to work with bridges to other version "
+      "control systems, disabling 'WITH_INTERNATIONAL'."
+    )
+    set(WITH_INTERNATIONAL OFF)
+  endif()
 endif()
 
 if(WITH_PYTHON)
-	# While we have this as an '#error' in 'bpy_capi_utils.h',
-	# upgrading Python tends to cause confusion for users who build.
-	# Give the error message early to make this more obvious.
-	#
-	# Do this before main 'platform_*' checks,
-	# because UNIX will search for the old Python paths which may not exist.
-	# giving errors about missing paths before this case is met.
-	if(DEFINED PYTHON_VERSION AND "${PYTHON_VERSION}" VERSION_LESS "3.7")
-		message(FATAL_ERROR "At least Python 3.7 is required to build")
-	endif()
-
-	if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/scripts/addons/modules")
-		message(WARNING
-			"Addons path '${CMAKE_SOURCE_DIR}/release/scripts/addons' is missing, "
-			"This is a 'git submodule', which are known not to work with bridges to other version "
-			"control systems: * CONTINUING WITHOUT ADDONS *"
-		)
-	endif()
+  # While we have this as an '#error' in 'bpy_capi_utils.h',
+  # upgrading Python tends to cause confusion for users who build.
+  # Give the error message early to make this more obvious.
+  #
+  # Do this before main 'platform_*' checks,
+  # because UNIX will search for the old Python paths which may not exist.
+  # giving errors about missing paths before this case is met.
+  if(DEFINED PYTHON_VERSION AND "${PYTHON_VERSION}" VERSION_LESS "3.7")
+    message(FATAL_ERROR "At least Python 3.7 is required to build")
+  endif()
+
+  if(NOT EXISTS "${CMAKE_SOURCE_DIR}/release/scripts/addons/modules")
+    message(WARNING
+      "Addons path '${CMAKE_SOURCE_DIR}/release/scripts/addons' is missing, "
+      "This is a 'git submodule', which are known not to work with bridges to other version "
+      "control systems: * CONTINUING WITHOUT ADDONS *"
+    )
+  endif()
 endif()
 
 #-----------------------------------------------------------------------------
@@ -809,68 +809,68 @@ set(PLATFORM_LINKFLAGS "")
 set(PLATFORM_LINKFLAGS_DEBUG "")
 
 if (NOT CMAKE_BUILD_TYPE MATCHES "Release")
-	if(WITH_COMPILER_ASAN)
-		set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COMPILER_ASAN_CFLAGS}")
-		set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CFLAGS}")
+  if(WITH_COMPILER_ASAN)
+    set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COMPILER_ASAN_CFLAGS}")
+    set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CFLAGS}")
 
-		set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COMPILER_ASAN_CXXFLAGS}")
-		set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CXXFLAGS}")
-		if(MSVC)
-			set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
-		endif()
-		set(PLATFORM_LINKLIBS "${PLATFORM_LINKLIBS};${COMPILER_ASAN_LIBRARY}")
-		set(PLATFORM_LINKFLAGS "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
-		set(PLATFORM_LINKFLAGS_DEBUG "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
-	endif()
+    set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COMPILER_ASAN_CXXFLAGS}")
+    set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${COMPILER_ASAN_CXXFLAGS}")
+    if(MSVC)
+      set(COMPILER_ASAN_LINKER_FLAGS "/FUNCTIONPADMIN:6")
+    endif()
+    set(PLATFORM_LINKLIBS "${PLATFORM_LINKLIBS};${COMPILER_ASAN_LIBRARY}")
+    set(PLATFORM_LINKFLAGS "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
+    set(PLATFORM_LINKFLAGS_DEBUG "${COMPILER_ASAN_LIBRARY} ${COMPILER_ASAN_LINKER_FLAGS}")
+  endif()
 endif()
 
 #-----------------------------------------------------------------------------
 #Platform specifics
 
 if(WITH_X11)
-	find_package(X11 REQUIRED)
-
-	find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
-	mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
-
-	list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
-
-	if(WITH_X11_XINPUT)
-		if(X11_Xinput_LIB)
-			list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
-		else()
-			set(WITH_X11_XINPUT OFF)
-		endif()
-	endif()
-
-	if(WITH_X11_XF86VMODE)
-		# XXX, why doesn't cmake make this available?
-		find_library(X11_Xxf86vmode_LIB Xxf86vm   ${X11_LIB_SEARCH_PATH})
-		mark_as_advanced(X11_Xxf86vmode_LIB)
-		if(X11_Xxf86vmode_LIB)
-			list(APPEND PLATFORM_LINKLIBS ${X11_Xxf86vmode_LIB})
-		else()
-			set(WITH_X11_XF86VMODE OFF)
-		endif()
-	endif()
-
-	if(WITH_X11_XFIXES)
-		if(X11_Xfixes_LIB)
-			list(APPEND PLATFORM_LINKLIBS ${X11_Xfixes_LIB})
-		else()
-			set(WITH_X11_XFIXES OFF)
-		endif()
-	endif()
-
-	if(WITH_X11_ALPHA)
-		find_library(X11_Xrender_LIB Xrender  ${X11_LIB_SEARCH_PATH})
-		mark_as_advanced(X11_Xrender_LIB)
-		if(X11_Xrender_LIB)
-			list(APPEND PLATFORM_LINKLIBS ${X11_Xrender_LIB})
-		else()
-			set(WITH_X11_ALPHA OFF)
-		endif()
-	endif()
+  find_package(X11 REQUIRED)
+
+  find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
+  mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
+
+  list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
+
+  if(WITH_X11_XINPUT)
+    if(X11_Xinput_LIB)
+      list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
+    else()
+      set(WITH_X11_XINPUT OFF)
+    endif()
+  endif()
+
+  if(WITH_X11_XF86VMODE)
+    # XXX, why doesn't cmake make this available?
+    find_library(X11_Xxf86vmode_LIB Xxf86vm   ${X11_LIB_SEARCH_PATH})
+    mark_as_advanced(X11_Xxf86vmode_LIB)
+    if(X11_Xxf86vmode_LIB)
+      list(APPEND PLATFORM_LINKLIBS ${X11_Xxf86vmode_LIB})
+    else()
+      set(WITH_X11_XF86VMODE OFF)
+    endif()
+  endif()
+
+  if(WITH_X11_XFIXES)
+    if(X11_Xfixes_LIB)
+      list(APPEND PLATFORM_LINKLIBS ${X11_Xfixes_LIB})
+    else()
+      set(WITH_X11_XFIXES OFF)
+    endif()
+  endif()
+
+  if(WITH_X11_ALPHA)
+    find_library(X11_Xrender_LIB Xrender  ${X11_LIB_SEARCH_PATH})
+    mark_as_advanced(X11_Xrender_LIB)
+    if(X11_Xrender_LIB)
+      list(APPEND PLATFORM_LINKLIBS ${X11_Xrender_LIB})
+    else()
+      set(WITH_X11_ALPHA OFF)
+    endif()
+  endif()
 
 endif()
 
@@ -883,51 +883,51 @@ endif()
 # - APPLE
 
 if(UNIX AND NOT APPLE)
-	include(platform_unix)
+  include(platform_unix)
 elseif(WIN32)
-	include(platform_win32)
+  include(platform_win32)
 elseif(APPLE)
-	include(platform_apple)
+  include(platform_apple)
 endif()
 
 #-----------------------------------------------------------------------------
 # Common.
 
 if(NOT WITH_FFTW3 AND WITH_MOD_OCEANSIM)
-	message(FATAL_ERROR "WITH_MOD_OCEANSIM requires WITH_FFTW3 to be ON")
+  message(FATAL_ERROR "WITH_MOD_OCEANSIM requires WITH_FFTW3 to be ON")
 endif()
 
 if(WITH_CYCLES)
-	if(NOT WITH_OPENIMAGEIO)
-		message(FATAL_ERROR
-			"Cycles requires WITH_OPENIMAGEIO, the library may not have been found. "
-			"Configure OIIO or disable WITH_CYCLES"
-		)
-	endif()
-	if(NOT WITH_BOOST)
-		message(FATAL_ERROR
-			"Cycles requires WITH_BOOST, the library may not have been found. "
-			"Configure BOOST or disable WITH_CYCLES"
-		)
-	endif()
-
-	if(WITH_CYCLES_OSL)
-		if(NOT WITH_LLVM)
-			message(FATAL_ERROR
-				"Cycles OSL requires WITH_LLVM, the library may not have been found. "
-				"Configure LLVM or disable WITH_CYCLES_OSL"
-			)
-		endif()
-	endif()
+  if(NOT WITH_OPENIMAGEIO)
+    message(FATAL_ERROR
+      "Cycles requires WITH_OPENIMAGEIO, the library may not have been found. "
+      "Configure OIIO or disable WITH_CYCLES"
+    )
+  endif()
+  if(NOT WITH_BOOST)
+    message(FATAL_ERROR
+      "Cycles requires WITH_BOOST, the library may not have been found. "
+      "Configure BOOST or disable WITH_CYCLES"
+    )
+  endif()
+
+  if(WITH_CYCLES_OSL)
+    if(NOT WITH_LLVM)
+      message(FATAL_ERROR
+        "Cycles OSL requires WITH_LLVM, the library may not have been found. "
+        "Configure LLVM or disable WITH_CYCLES_OSL"
+      )
+    endif()
+  endif()
 endif()
 
 if(WITH_INTERNATIONAL)
-	if(NOT WITH_BOOST)
-		message(FATAL_ERROR
-			"Internationalization requires WITH_BOOST, the library may not have been found. "
-			"Configure BOOST or disable WITH_INTERNATIONAL"
-		)
-	endif()
+  if(NOT WITH_BOOST)
+    message(FATAL_ERROR
+      "Internationalization requires WITH_BOOST, the library may not have been found. "
+      "Configure BOOST or disable WITH_INTERNATIONAL"
+    )
+  endif()
 endif()
 
 # See TEST_SSE_SUPPORT() for how this is defined.
@@ -935,53 +935,53 @@ endif()
 # Do it globally, SSE2 is required for quite some time now.
 # Doing it now allows to use SSE/SSE2 in inline headers.
 if(SUPPORT_SSE_BUILD)
-	set(PLATFORM_CFLAGS " ${COMPILER_SSE_FLAG} ${PLATFORM_CFLAGS}")
-	add_definitions(-D__SSE__ -D__MMX__)
+  set(PLATFORM_CFLAGS " ${COMPILER_SSE_FLAG} ${PLATFORM_CFLAGS}")
+  add_definitions(-D__SSE__ -D__MMX__)
 endif()
 if(SUPPORT_SSE2_BUILD)
-	set(PLATFORM_CFLAGS " ${PLATFORM_CFLAGS} ${COMPILER_SSE2_FLAG}")
-	add_definitions(-D__SSE2__)
-	if(NOT SUPPORT_SSE_BUILD) # don't double up
-		add_definitions(-D__MMX__)
-	endif()
+  set(PLATFORM_CFLAGS " ${PLATFORM_CFLAGS} ${COMPILER_SSE2_FLAG}")
+  add_definitions(-D__SSE2__)
+  if(NOT SUPPORT_SSE_BUILD) # don't double up
+    add_definitions(-D__MMX__)
+  endif()
 endif()
 
 
 # set the endian define
 if(MSVC)
-	# for some reason this fails on msvc
-	add_definitions(-D__LITTLE_ENDIAN__)
+  # for some reason this fails on msvc
+  add_definitions(-D__LITTLE_ENDIAN__)
 
 # OSX-Note: as we do cross-compiling with specific set architecture,
 # endianess-detection and auto-setting is counterproductive
 # so we just set endianness according CMAKE_OSX_ARCHITECTURES
 
 elseif(CMAKE_OSX_ARCHITECTURES MATCHES i386 OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
-	add_definitions(-D__LITTLE_ENDIAN__)
+  add_definitions(-D__LITTLE_ENDIAN__)
 elseif(CMAKE_OSX_ARCHITECTURES MATCHES ppc OR CMAKE_OSX_ARCHITECTURES MATCHES ppc64)
-	add_definitions(-D__BIG_ENDIAN__)
+  add_definitions(-D__BIG_ENDIAN__)
 
 else()
-	include(TestBigEndian)
-	test_big_endian(_SYSTEM_BIG_ENDIAN)
-	if(_SYSTEM_BIG_ENDIAN)
-		add_definitions(-D__BIG_ENDIAN__)
-	else()
-		add_definitions(-D__LITTLE_ENDIAN__)
-	endif()
-	unset(_SYSTEM_BIG_ENDIAN)
+  include(TestBigEndian)
+  test_big_endian(_SYSTEM_BIG_ENDIAN)
+  if(_SYSTEM_BIG_ENDIAN)
+    add_definitions(-D__BIG_ENDIAN__)
+  else()
+    add_definitions(-D__LITTLE_ENDIAN__)
+  endif()
+  unset(_SYSTEM_BIG_ENDIAN)
 endif()
 if(WITH_IMAGE_OPENJPEG)
-	# Special handling of Windows platform where openjpeg is always static.
-	if(WIN32)
-		set(OPENJPEG_DEFINES "-DOPJ_STATIC")
-	else()
-		set(OPENJPEG_DEFINES "")
-	endif()
+  # Special handling of Windows platform where openjpeg is always static.
+  if(WIN32)
+    set(OPENJPEG_DEFINES "-DOPJ_STATIC")
+  else()
+    set(OPENJPEG_DEFINES "")
+  endif()
 endif()
 
 if(NOT WITH_SYSTEM_EIGEN3)
-	set(EIGEN3_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/Eigen3)
+  set(EIGEN3_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/Eigen3)
 endif()
 
 #-----------------------------------------------------------------------------
@@ -991,224 +991,224 @@ find_package(OpenGL)
 blender_include_dirs_sys("${OPENGL_INCLUDE_DIR}")
 
 if(WITH_OPENGL)
-	add_definitions(-DWITH_OPENGL)
+  add_definitions(-DWITH_OPENGL)
 endif()
 
 if(WITH_SYSTEM_GLES)
-	find_package_wrapper(OpenGLES)
+  find_package_wrapper(OpenGLES)
 endif()
 
 if(WITH_GL_PROFILE_ES20)
-	if(WITH_SYSTEM_GLES)
-		if(NOT OPENGLES_LIBRARY)
-			message(FATAL_ERROR
-				"Unable to find OpenGL ES libraries. "
-				"Install them or disable WITH_SYSTEM_GLES."
-			)
-		endif()
+  if(WITH_SYSTEM_GLES)
+    if(NOT OPENGLES_LIBRARY)
+      message(FATAL_ERROR
+        "Unable to find OpenGL ES libraries. "
+        "Install them or disable WITH_SYSTEM_GLES."
+      )
+    endif()
 
-		list(APPEND BLENDER_GL_LIBRARIES OPENGLES_LIBRARY)
+    list(APPEND BLENDER_GL_LIBRARIES OPENGLES_LIBRARY)
 
-	else()
-		set(OPENGLES_LIBRARY "" CACHE FILEPATH "OpenGL ES 2.0 library file")
-		mark_as_advanced(OPENGLES_LIBRARY)
+  else()
+    set(OPENGLES_LIBRARY "" CACHE FILEPATH "OpenGL ES 2.0 library file")
+    mark_as_advanced(OPENGLES_LIBRARY)
 
-		list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}")
+    list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}")
 
-		if(NOT OPENGLES_LIBRARY)
-			message(FATAL_ERROR
-				"To compile WITH_GL_EGL you need to set OPENGLES_LIBRARY "
-				"to the file path of an OpenGL ES 2.0 library."
-			)
-		endif()
+    if(NOT OPENGLES_LIBRARY)
+      message(FATAL_ERROR
+        "To compile WITH_GL_EGL you need to set OPENGLES_LIBRARY "
+        "to the file path of an OpenGL ES 2.0 library."
+      )
+    endif()
 
-	endif()
+  endif()
 
-	if(WIN32)
-		# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
+  if(WIN32)
+    # Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
 
-		set(OPENGLES_DLL "" CACHE FILEPATH "OpenGL ES 2.0 redistributable DLL file")
-		mark_as_advanced(OPENGLES_DLL)
+    set(OPENGLES_DLL "" CACHE FILEPATH "OpenGL ES 2.0 redistributable DLL file")
+    mark_as_advanced(OPENGLES_DLL)
 
-		if(NOT OPENGLES_DLL)
-			message(FATAL_ERROR
-				"To compile WITH_GL_PROFILE_ES20 you need to set OPENGLES_DLL to the file "
-				"path of an OpenGL ES 2.0 runtime dynamic link library (DLL)."
-			)
-		endif()
+    if(NOT OPENGLES_DLL)
+      message(FATAL_ERROR
+        "To compile WITH_GL_PROFILE_ES20 you need to set OPENGLES_DLL to the file "
+        "path of an OpenGL ES 2.0 runtime dynamic link library (DLL)."
+      )
+    endif()
 
-		if(WITH_GL_ANGLE)
-			list(APPEND GL_DEFINITIONS -DWITH_ANGLE)
+    if(WITH_GL_ANGLE)
+      list(APPEND GL_DEFINITIONS -DWITH_ANGLE)
 
-			set(D3DCOMPILER_DLL "" CACHE FILEPATH "Direct3D Compiler redistributable DLL file (needed by ANGLE)")
+      set(D3DCOMPILER_DLL "" CACHE FILEPATH "Direct3D Compiler redistributable DLL file (needed by ANGLE)")
 
-			get_filename_component(D3DCOMPILER_FILENAME "${D3DCOMPILER_DLL}" NAME)
-			list(APPEND GL_DEFINITIONS "-DD3DCOMPILER=\"\\\"${D3DCOMPILER_FILENAME}\\\"\"")
+      get_filename_component(D3DCOMPILER_FILENAME "${D3DCOMPILER_DLL}" NAME)
+      list(APPEND GL_DEFINITIONS "-DD3DCOMPILER=\"\\\"${D3DCOMPILER_FILENAME}\\\"\"")
 
-			mark_as_advanced(D3DCOMPILER_DLL)
+      mark_as_advanced(D3DCOMPILER_DLL)
 
-			if(D3DCOMPILER_DLL STREQUAL "")
-				message(FATAL_ERROR
-					"To compile WITH_GL_ANGLE you need to set D3DCOMPILER_DLL to the file "
-					"path of a copy of the DirectX redistributable DLL file: D3DCompiler_46.dll"
-				)
-			endif()
+      if(D3DCOMPILER_DLL STREQUAL "")
+        message(FATAL_ERROR
+          "To compile WITH_GL_ANGLE you need to set D3DCOMPILER_DLL to the file "
+          "path of a copy of the DirectX redistributable DLL file: D3DCompiler_46.dll"
+        )
+      endif()
 
-		endif()
+    endif()
 
-	endif()
+  endif()
 
 else()
-	if(OpenGL_GL_PREFERENCE STREQUAL "LEGACY" AND OPENGL_gl_LIBRARY)
-		list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
-	else()
-		list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY})
-	endif()
+  if(OpenGL_GL_PREFERENCE STREQUAL "LEGACY" AND OPENGL_gl_LIBRARY)
+    list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
+  else()
+    list(APPEND BLENDER_GL_LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY})
+  endif()
 endif()
 
 if(WITH_GL_EGL)
-	list(APPEND GL_DEFINITIONS -DWITH_GL_EGL)
+  list(APPEND GL_DEFINITIONS -DWITH_GL_EGL)
 
-	if(WITH_SYSTEM_GLES)
-		if(NOT OPENGLES_EGL_LIBRARY)
-			message(FATAL_ERROR
-				"Unable to find OpenGL ES libraries. "
-				"Install them or disable WITH_SYSTEM_GLES."
-			)
-		endif()
+  if(WITH_SYSTEM_GLES)
+    if(NOT OPENGLES_EGL_LIBRARY)
+      message(FATAL_ERROR
+        "Unable to find OpenGL ES libraries. "
+        "Install them or disable WITH_SYSTEM_GLES."
+      )
+    endif()
 
-		list(APPEND BLENDER_GL_LIBRARIES OPENGLES_EGL_LIBRARY)
+    list(APPEND BLENDER_GL_LIBRARIES OPENGLES_EGL_LIBRARY)
 
-	else()
-		set(OPENGLES_EGL_LIBRARY "" CACHE FILEPATH "EGL library file")
-		mark_as_advanced(OPENGLES_EGL_LIBRARY)
+  else()
+    set(OPENGLES_EGL_LIBRARY "" CACHE FILEPATH "EGL library file")
+    mark_as_advanced(OPENGLES_EGL_LIBRARY)
 
-		list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}" "${OPENGLES_EGL_LIBRARY}")
+    list(APPEND BLENDER_GL_LIBRARIES "${OPENGLES_LIBRARY}" "${OPENGLES_EGL_LIBRARY}")
 
-		if(NOT OPENGLES_EGL_LIBRARY)
-			message(FATAL_ERROR
-				"To compile WITH_GL_EGL you need to set OPENGLES_EGL_LIBRARY "
-				"to the file path of an EGL library."
-			)
-		endif()
+    if(NOT OPENGLES_EGL_LIBRARY)
+      message(FATAL_ERROR
+        "To compile WITH_GL_EGL you need to set OPENGLES_EGL_LIBRARY "
+        "to the file path of an EGL library."
+      )
+    endif()
 
-	endif()
+  endif()
 
-	if(WIN32)
-		# Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
+  if(WIN32)
+    # Setup paths to files needed to install and redistribute Windows Blender with OpenGL ES
 
-		set(OPENGLES_EGL_DLL "" CACHE FILEPATH "EGL redistributable DLL file")
-		mark_as_advanced(OPENGLES_EGL_DLL)
+    set(OPENGLES_EGL_DLL "" CACHE FILEPATH "EGL redistributable DLL file")
+    mark_as_advanced(OPENGLES_EGL_DLL)
 
-		if(NOT OPENGLES_EGL_DLL)
-			message(FATAL_ERROR
-				"To compile WITH_GL_EGL you need to set OPENGLES_EGL_DLL "
-				"to the file path of an EGL runtime dynamic link library (DLL)."
-			)
-		endif()
+    if(NOT OPENGLES_EGL_DLL)
+      message(FATAL_ERROR
+        "To compile WITH_GL_EGL you need to set OPENGLES_EGL_DLL "
+        "to the file path of an EGL runtime dynamic link library (DLL)."
+      )
+    endif()
 
-	endif()
+  endif()
 
 endif()
 
 if(WITH_GL_PROFILE_ES20)
-	list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_ES20)
+  list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_ES20)
 else()
-	list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
+  list(APPEND GL_DEFINITIONS -DWITH_GL_PROFILE_CORE)
 endif()
 
 if(WITH_GL_EGL)
-	list(APPEND GL_DEFINITIONS -DWITH_EGL)
+  list(APPEND GL_DEFINITIONS -DWITH_EGL)
 endif()
 
 #-----------------------------------------------------------------------------
 # Configure OpenMP.
 if(WITH_OPENMP)
-	if(NOT OPENMP_CUSTOM)
-		find_package(OpenMP)
-	endif()
-
-	if(OPENMP_FOUND)
-		if(NOT WITH_OPENMP_STATIC)
-			set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
-			set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
-		else()
-			# Typically avoid adding flags as defines but we can't
-			# pass OpenMP flags to the linker for static builds, meaning
-			# we can't add any OpenMP related flags to CFLAGS variables
-			# since they're passed to the linker as well.
-			add_definitions("${OpenMP_C_FLAGS}")
-
-			find_library_static(OpenMP_LIBRARIES gomp ${CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES})
-		endif()
-	else()
-		set(WITH_OPENMP OFF)
-	endif()
-
-	mark_as_advanced(
-		OpenMP_C_FLAGS
-		OpenMP_CXX_FLAGS
-	)
+  if(NOT OPENMP_CUSTOM)
+    find_package(OpenMP)
+  endif()
+
+  if(OPENMP_FOUND)
+    if(NOT WITH_OPENMP_STATIC)
+      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+    else()
+      # Typically avoid adding flags as defines but we can't
+      # pass OpenMP flags to the linker for static builds, meaning
+      # we can't add any OpenMP related flags to CFLAGS variables
+      # since they're passed to the linker as well.
+      add_definitions("${OpenMP_C_FLAGS}")
+
+      find_library_static(OpenMP_LIBRARIES gomp ${CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES})
+    endif()
+  else()
+    set(WITH_OPENMP OFF)
+  endif()
+
+  mark_as_advanced(
+    OpenMP_C_FLAGS
+    OpenMP_CXX_FLAGS
+  )
 endif()
 
 #-----------------------------------------------------------------------------
 # Configure GLEW
 
 if(WITH_SYSTEM_GLEW)
-	find_package(GLEW)
+  find_package(GLEW)
 
-	# Note: There is an assumption here that the system GLEW is not a static library.
+  # Note: There is an assumption here that the system GLEW is not a static library.
 
-	if(NOT GLEW_FOUND)
-		message(FATAL_ERROR "GLEW is required to build Blender. Install it or disable WITH_SYSTEM_GLEW.")
-	endif()
+  if(NOT GLEW_FOUND)
+    message(FATAL_ERROR "GLEW is required to build Blender. Install it or disable WITH_SYSTEM_GLEW.")
+  endif()
 
-	set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
+  set(BLENDER_GLEW_LIBRARIES ${GLEW_LIBRARY})
 else()
-	if(WITH_GLEW_ES)
-		set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew-es/include")
+  if(WITH_GLEW_ES)
+    set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew-es/include")
 
-		list(APPEND GL_DEFINITIONS -DGLEW_STATIC -DWITH_GLEW_ES)
+    list(APPEND GL_DEFINITIONS -DGLEW_STATIC -DWITH_GLEW_ES)
 
-		# These definitions remove APIs from glew.h, making GLEW smaller, and catching unguarded API usage
-		if(WITH_GL_PROFILE_ES20)
-			list(APPEND GL_DEFINITIONS -DGLEW_ES_ONLY)
-		else()
-			# No ES functions are needed
-			list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
-		endif()
+    # These definitions remove APIs from glew.h, making GLEW smaller, and catching unguarded API usage
+    if(WITH_GL_PROFILE_ES20)
+      list(APPEND GL_DEFINITIONS -DGLEW_ES_ONLY)
+    else()
+      # No ES functions are needed
+      list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
+    endif()
 
-		if(WITH_GL_PROFILE_ES20)
-			if(WITH_GL_EGL)
-				list(APPEND GL_DEFINITIONS -DGLEW_USE_LIB_ES20)
-			endif()
+    if(WITH_GL_PROFILE_ES20)
+      if(WITH_GL_EGL)
+        list(APPEND GL_DEFINITIONS -DGLEW_USE_LIB_ES20)
+      endif()
 
-			# ToDo: This is an experiment to eliminate ES 1 symbols,
-			# GLEW doesn't really properly provide this level of control
-			# (for example, without modification it eliminates too many symbols)
-			# so there are lots of modifications to GLEW to make this work,
-			# and no attempt to make it work beyond Blender at this point.
-			list(APPEND GL_DEFINITIONS -DGL_ES_VERSION_1_0=0 -DGL_ES_VERSION_CL_1_1=0 -DGL_ES_VERSION_CM_1_1=0)
-		endif()
+      # ToDo: This is an experiment to eliminate ES 1 symbols,
+      # GLEW doesn't really properly provide this level of control
+      # (for example, without modification it eliminates too many symbols)
+      # so there are lots of modifications to GLEW to make this work,
+      # and no attempt to make it work beyond Blender at this point.
+      list(APPEND GL_DEFINITIONS -DGL_ES_VERSION_1_0=0 -DGL_ES_VERSION_CL_1_1=0 -DGL_ES_VERSION_CM_1_1=0)
+    endif()
 
-		if(WITH_GL_EGL)
-			list(APPEND GL_DEFINITIONS -DGLEW_INC_EGL)
-		endif()
+    if(WITH_GL_EGL)
+      list(APPEND GL_DEFINITIONS -DGLEW_INC_EGL)
+    endif()
 
-		set(BLENDER_GLEW_LIBRARIES extern_glew_es bf_intern_glew_mx)
+    set(BLENDER_GLEW_LIBRARIES extern_glew_es bf_intern_glew_mx)
 
-	else()
-		set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
+  else()
+    set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
 
-		list(APPEND GL_DEFINITIONS -DGLEW_STATIC)
+    list(APPEND GL_DEFINITIONS -DGLEW_STATIC)
 
-		# This won't affect the non-experimental glew library,
-		# but is used for conditional compilation elsewhere.
-		list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
+    # This won't affect the non-experimental glew library,
+    # but is used for conditional compilation elsewhere.
+    list(APPEND GL_DEFINITIONS -DGLEW_NO_ES)
 
-		set(BLENDER_GLEW_LIBRARIES extern_glew)
+    set(BLENDER_GLEW_LIBRARIES extern_glew)
 
-	endif()
+  endif()
 
 endif()
 
@@ -1218,70 +1218,70 @@ list(APPEND GL_DEFINITIONS -DGLEW_NO_GLU)
 # Configure Bullet
 
 if(WITH_BULLET AND WITH_SYSTEM_BULLET)
-	find_package(Bullet)
-	if(NOT BULLET_FOUND)
-		set(WITH_BULLET OFF)
-	endif()
+  find_package(Bullet)
+  if(NOT BULLET_FOUND)
+    set(WITH_BULLET OFF)
+  endif()
 else()
-	set(BULLET_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/bullet2/src")
-	# set(BULLET_LIBRARIES "")
+  set(BULLET_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/bullet2/src")
+  # set(BULLET_LIBRARIES "")
 endif()
 
 #-----------------------------------------------------------------------------
 # Configure Python.
 
 if(WITH_PYTHON_MODULE)
-	add_definitions(-DPy_ENABLE_SHARED)
+  add_definitions(-DPy_ENABLE_SHARED)
 endif()
 
 #-----------------------------------------------------------------------------
 # Configure GLog/GFlags
 
 if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
-	if(WITH_SYSTEM_GFLAGS)
-		find_package(Gflags)
-		if(NOT GFLAGS_FOUND)
-			message(FATAL_ERROR "System wide Gflags is requested but was not found")
-		endif()
-		# FindGflags does not define this, and we are not even sure what to use here.
-		set(GFLAGS_DEFINES)
-	else()
-		set(GFLAGS_DEFINES
-			-DGFLAGS_DLL_DEFINE_FLAG=
-			-DGFLAGS_DLL_DECLARE_FLAG=
-			-DGFLAGS_DLL_DECL=
-		)
-		set(GFLAGS_NAMESPACE "gflags")
-		set(GFLAGS_LIBRARIES extern_gflags)
-		set(GFLAGS_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/extern/gflags/src")
-	endif()
-
-	if(WITH_SYSTEM_GLOG)
-		find_package(Glog)
-		if(NOT GLOG_FOUND)
-			message(FATAL_ERROR "System wide Glog is requested but was not found")
-		endif()
-		# FindGlog does not define this, and we are not even sure what to use here.
-		set(GLOG_DEFINES)
-	else()
-		set(GLOG_DEFINES
-			-DGOOGLE_GLOG_DLL_DECL=
-		)
-		set(GLOG_LIBRARIES extern_glog)
-		if(WIN32)
-			set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows)
-		else()
-			set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/include)
-		endif()
-	endif()
+  if(WITH_SYSTEM_GFLAGS)
+    find_package(Gflags)
+    if(NOT GFLAGS_FOUND)
+      message(FATAL_ERROR "System wide Gflags is requested but was not found")
+    endif()
+    # FindGflags does not define this, and we are not even sure what to use here.
+    set(GFLAGS_DEFINES)
+  else()
+    set(GFLAGS_DEFINES
+      -DGFLAGS_DLL_DEFINE_FLAG=
+      -DGFLAGS_DLL_DECLARE_FLAG=
+      -DGFLAGS_DLL_DECL=
+    )
+    set(GFLAGS_NAMESPACE "gflags")
+    set(GFLAGS_LIBRARIES extern_gflags)
+    set(GFLAGS_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/extern/gflags/src")
+  endif()
+
+  if(WITH_SYSTEM_GLOG)
+    find_package(Glog)
+    if(NOT GLOG_FOUND)
+      message(FATAL_ERROR "System wide Glog is requested but was not found")
+    endif()
+    # FindGlog does not define this, and we are not even sure what to use here.
+    set(GLOG_DEFINES)
+  else()
+    set(GLOG_DEFINES
+      -DGOOGLE_GLOG_DLL_DECL=
+    )
+    set(GLOG_LIBRARIES extern_glog)
+    if(WIN32)
+      set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows)
+    else()
+      set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/include)
+    endif()
+  endif()
 endif()
 
 #-----------------------------------------------------------------------------
 # Configure Ceres
 
 if(WITH_LIBMV)
-	# We always have C++11 which includes unordered_map.
-	set(CERES_DEFINES -DCERES_STD_UNORDERED_MAP)
+  # We always have C++11 which includes unordered_map.
+  set(CERES_DEFINES -DCERES_STD_UNORDERED_MAP)
 endif()
 
 #-----------------------------------------------------------------------------
@@ -1289,259 +1289,259 @@ endif()
 
 if(CMAKE_COMPILER_IS_GNUCC)
 
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_CAST_ALIGN -Wcast-align)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
-	# system headers sometimes do this, disable for now, was: -Werror=strict-prototypes
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES  -Wstrict-prototypes)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_WRITE_STRINGS -Wwrite-strings)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_LOGICAL_OP -Wlogical-op)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNDEF -Wundef)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_INIT_SELF -Winit-self)  # needs -Wuninitialized
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_NULL -Wnonnull)  # C only
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_TYPE_LIMITS -Wtype-limits)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_FORMAT_SIGN -Wformat-signedness)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_RESTRICT -Wrestrict)
-
-	# gcc 4.2 gives annoying warnings on every file with this
-	if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
-		ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNINITIALIZED -Wuninitialized)
-	endif()
-
-	# versions before gcc4.6 give many BLI_math warnings
-	if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.6")
-		ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_REDUNDANT_DECLS       -Wredundant-decls)
-		ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_REDUNDANT_DECLS -Wredundant-decls)
-	endif()
-
-	# versions before gcc4.8 include global name-space.
-	if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.8")
-		ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_SHADOW -Wshadow)
-	endif()
-
-	# disable because it gives warnings for printf() & friends.
-	# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_DOUBLE_PROMOTION -Wdouble-promotion -Wno-error=double-promotion)
-
-	if(NOT APPLE)
-		ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
-	endif()
-
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_LOGICAL_OP -Wlogical-op)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_INIT_SELF -Winit-self)  # needs -Wuninitialized
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_TYPE_LIMITS -Wtype-limits)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_POINTER_ARITH -Wpointer-arith)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_PARAMETER -Wunused-parameter)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_WRITE_STRINGS -Wwrite-strings)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_FORMAT_SIGN -Wformat-signedness)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_RESTRICT -Wrestrict)
-
-	# gcc 4.2 gives annoying warnings on every file with this
-	if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
-		ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNINITIALIZED -Wuninitialized)
-	endif()
-
-	# causes too many warnings
-	if(NOT APPLE)
-		ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
-		ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
-	endif()
-
-	# Use 'ATTR_FALLTHROUGH' macro to suppress.
-	if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
-		ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
-		ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
-	endif()
-
-	# flags to undo strict flags
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER        -Wno-unused-parameter)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION         -Wno-unused-function)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_TYPE_LIMITS             -Wno-type-limits)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_IN_BOOL_CONTEXT     -Wno-int-in-bool-context)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_FORMAT                  -Wno-format)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_SWITCH                  -Wno-switch)
-
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CLASS_MEMACCESS     -Wno-class-memaccess)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT             -Wno-comment)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS     -Wno-unused-local-typedefs)
-
-	if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
-		ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH    -Wno-implicit-fallthrough)
-	endif()
-
-	if(NOT APPLE)
-		ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
-	endif()
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_CAST_ALIGN -Wcast-align)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
+  # system headers sometimes do this, disable for now, was: -Werror=strict-prototypes
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES  -Wstrict-prototypes)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_WRITE_STRINGS -Wwrite-strings)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_LOGICAL_OP -Wlogical-op)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNDEF -Wundef)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_INIT_SELF -Winit-self)  # needs -Wuninitialized
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_NULL -Wnonnull)  # C only
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_TYPE_LIMITS -Wtype-limits)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_FORMAT_SIGN -Wformat-signedness)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_RESTRICT -Wrestrict)
+
+  # gcc 4.2 gives annoying warnings on every file with this
+  if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
+    ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNINITIALIZED -Wuninitialized)
+  endif()
+
+  # versions before gcc4.6 give many BLI_math warnings
+  if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.6")
+    ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_REDUNDANT_DECLS       -Wredundant-decls)
+    ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_REDUNDANT_DECLS -Wredundant-decls)
+  endif()
+
+  # versions before gcc4.8 include global name-space.
+  if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.8")
+    ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_SHADOW -Wshadow)
+  endif()
+
+  # disable because it gives warnings for printf() & friends.
+  # ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_DOUBLE_PROMOTION -Wdouble-promotion -Wno-error=double-promotion)
+
+  if(NOT APPLE)
+    ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
+  endif()
+
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_LOGICAL_OP -Wlogical-op)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_INIT_SELF -Winit-self)  # needs -Wuninitialized
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_INCLUDE_DIRS -Wmissing-include-dirs)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_DIV_BY_ZERO -Wno-div-by-zero)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_TYPE_LIMITS -Wtype-limits)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_POINTER_ARITH -Wpointer-arith)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_PARAMETER -Wunused-parameter)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_WRITE_STRINGS -Wwrite-strings)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_FORMAT_SIGN -Wformat-signedness)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_RESTRICT -Wrestrict)
+
+  # gcc 4.2 gives annoying warnings on every file with this
+  if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "4.3")
+    ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNINITIALIZED -Wuninitialized)
+  endif()
+
+  # causes too many warnings
+  if(NOT APPLE)
+    ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNDEF -Wundef)
+    ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_MISSING_DECLARATIONS -Wmissing-declarations)
+  endif()
+
+  # Use 'ATTR_FALLTHROUGH' macro to suppress.
+  if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
+    ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
+    ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
+  endif()
+
+  # flags to undo strict flags
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER        -Wno-unused-parameter)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION         -Wno-unused-function)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_TYPE_LIMITS             -Wno-type-limits)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_IN_BOOL_CONTEXT     -Wno-int-in-bool-context)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_FORMAT                  -Wno-format)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_SWITCH                  -Wno-switch)
+
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CLASS_MEMACCESS     -Wno-class-memaccess)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT             -Wno-comment)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS     -Wno-unused-local-typedefs)
+
+  if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
+    ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH    -Wno-implicit-fallthrough)
+  endif()
+
+  if(NOT APPLE)
+    ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_ERROR_UNUSED_BUT_SET_VARIABLE -Wno-error=unused-but-set-variable)
+  endif()
 
 elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
 
-	# strange, clang complains these are not supported, but then uses them.
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES  -Wstrict-prototypes)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
-
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS     -Wno-unknown-pragmas)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS     -Wno-char-subscripts)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_OVERLOADED_VIRTUAL  -Wno-overloaded-virtual)  # we get a lot of these, if its a problem a dev needs to look into it.
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE        -Wno-sign-compare)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF    -Wno-invalid-offsetof)
-
-	# gives too many unfixable warnings
-	# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS      -Wunused-macros)
-	# ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS          -Wunused-macros)
-
-	# flags to undo strict flags
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_MACROS    -Wno-unused-macros)
-
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_VARIABLE_DECLARATIONS -Wno-missing-variable-declarations)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INCOMPAT_PTR_DISCARD_QUAL -Wno-incompatible-pointer-types-discards-qualifiers)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_TO_VOID_POINTER_CAST -Wno-int-to-void-pointer-cast)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_PROTOTYPES -Wno-missing-prototypes)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DUPLICATE_ENUM -Wno-duplicate-enum)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNDEF -Wno-undef)
-	ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_NORETURN -Wno-missing-noreturn)
-
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_PRIVATE_FIELD -Wno-unused-private-field)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CXX11_NARROWING -Wno-c++11-narrowing)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_NON_VIRTUAL_DTOR -Wno-non-virtual-dtor)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_REORDER -Wno-reorder)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
+  # strange, clang complains these are not supported, but then uses them.
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE  -Werror=return-type)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_CHAR_SUBSCRIPTS -Wno-char-subscripts)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_STRICT_PROTOTYPES  -Wstrict-prototypes)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_MISSING_PROTOTYPES -Wmissing-prototypes)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_PARAMETER -Wunused-parameter)
+
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_AUTOLOGICAL_COMPARE -Wno-tautological-compare)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_UNKNOWN_PRAGMAS     -Wno-unknown-pragmas)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_CHAR_SUBSCRIPTS     -Wno-char-subscripts)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_OVERLOADED_VIRTUAL  -Wno-overloaded-virtual)  # we get a lot of these, if its a problem a dev needs to look into it.
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE        -Wno-sign-compare)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF    -Wno-invalid-offsetof)
+
+  # gives too many unfixable warnings
+  # ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS      -Wunused-macros)
+  # ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS          -Wunused-macros)
+
+  # flags to undo strict flags
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_MACROS    -Wno-unused-macros)
+
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_VARIABLE_DECLARATIONS -Wno-missing-variable-declarations)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INCOMPAT_PTR_DISCARD_QUAL -Wno-incompatible-pointer-types-discards-qualifiers)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_INT_TO_VOID_POINTER_CAST -Wno-int-to-void-pointer-cast)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_PROTOTYPES -Wno-missing-prototypes)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DUPLICATE_ENUM -Wno-duplicate-enum)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNDEF -Wno-undef)
+  ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_MISSING_NORETURN -Wno-missing-noreturn)
+
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_PRIVATE_FIELD -Wno-unused-private-field)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_CXX11_NARROWING -Wno-c++11-narrowing)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_NON_VIRTUAL_DTOR -Wno-non-virtual-dtor)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_MACROS -Wno-unused-macros)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_REORDER -Wno-reorder)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_COMMENT -Wno-comment)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_REMOVE_STRICT_FLAGS CXX_WARN_NO_UNUSED_TYPEDEFS -Wno-unused-local-typedefs)
 
 elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
 
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
-	ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_POINTER_ARITH -Wpointer-arith)
+  ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_NO_UNKNOWN_PRAGMAS -Wno-unknown-pragmas)
 
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
-	ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_ALL -Wall)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_INVALID_OFFSETOF -Wno-invalid-offsetof)
+  ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_NO_SIGN_COMPARE -Wno-sign-compare)
 
-	# disable numbered, false positives
-	set(C_WARNINGS "${C_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
-	set(CXX_WARNINGS "${CXX_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
+  # disable numbered, false positives
+  set(C_WARNINGS "${C_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
+  set(CXX_WARNINGS "${CXX_WARNINGS} -wd188,186,144,913,556,858,597,177,1292,167,279,592,94,2722,3199")
 elseif(CMAKE_C_COMPILER_ID MATCHES "MSVC")
-	# most msvc warnings are C & C++
-	set(_WARNINGS
-		# warning level:
-		"/W3"
-		"/w34062"  # switch statement contains 'default' but no 'case' labels
-		"/w34115"  # 'type' : named type definition in parentheses
-		"/w34189"  # local variable is initialized but not referenced
-		# disable:
-		"/wd4018"  # signed/unsigned mismatch
-		"/wd4146"  # unary minus operator applied to unsigned type, result still unsigned
-		"/wd4065"  # switch statement contains 'default' but no 'case' labels
-		"/wd4127"  # conditional expression is constant
-		"/wd4181"  # qualifier applied to reference type; ignored
-		"/wd4200"  # zero-sized array in struct/union
-		"/wd4244"  # conversion from 'type1' to 'type2', possible loss of data
-		"/wd4267"  # conversion from 'size_t' to 'type', possible loss of data
-		"/wd4305"  # truncation from 'type1' to 'type2'
-		"/wd4800"  # forcing value to bool 'true' or 'false'
-		"/wd4828"  # The file contains a character that is illegal
-		"/wd4996"  # identifier was declared deprecated
-		# errors:
-		"/we4013"  # 'function' undefined; assuming extern returning int
-		"/we4133"  # incompatible pointer types
-		"/we4431"  # missing type specifier - int assumed
-	)
-
-	if(MSVC_VERSION GREATER_EQUAL 1911)
-		# see https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5038?view=vs-2017
-		set(_WARNINGS "${_WARNINGS} /w35038") #order of initialisation in c++ constructors
-	endif()
-
-	string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
-	set(C_WARNINGS "${_WARNINGS}")
-	set(CXX_WARNINGS "${_WARNINGS}")
-	unset(_WARNINGS)
+  # most msvc warnings are C & C++
+  set(_WARNINGS
+    # warning level:
+    "/W3"
+    "/w34062"  # switch statement contains 'default' but no 'case' labels
+    "/w34115"  # 'type' : named type definition in parentheses
+    "/w34189"  # local variable is initialized but not referenced
+    # disable:
+    "/wd4018"  # signed/unsigned mismatch
+    "/wd4146"  # unary minus operator applied to unsigned type, result still unsigned
+    "/wd4065"  # switch statement contains 'default' but no 'case' labels
+    "/wd4127"  # conditional expression is constant
+    "/wd4181"  # qualifier applied to reference type; ignored
+    "/wd4200"  # zero-sized array in struct/union
+    "/wd4244"  # conversion from 'type1' to 'type2', possible loss of data
+    "/wd4267"  # conversion from 'size_t' to 'type', possible loss of data
+    "/wd4305"  # truncation from 'type1' to 'type2'
+    "/wd4800"  # forcing value to bool 'true' or 'false'
+    "/wd4828"  # The file contains a character that is illegal
+    "/wd4996"  # identifier was declared deprecated
+    # errors:
+    "/we4013"  # 'function' undefined; assuming extern returning int
+    "/we4133"  # incompatible pointer types
+    "/we4431"  # missing type specifier - int assumed
+  )
+
+  if(MSVC_VERSION GREATER_EQUAL 1911)
+    # see https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5038?view=vs-2017
+    set(_WARNINGS "${_WARNINGS} /w35038") #order of initialisation in c++ constructors
+  endif()
+
+  string(REPLACE ";" " " _WARNINGS "${_WARNINGS}")
+  set(C_WARNINGS "${_WARNINGS}")
+  set(CXX_WARNINGS "${_WARNINGS}")
+  unset(_WARNINGS)
 endif()
 
 # ensure python header is found since detection can fail, this could happen
 # with _any_ library but since we used a fixed python version this tends to
 # be most problematic.
 if(WITH_PYTHON)
-	if(NOT EXISTS "${PYTHON_INCLUDE_DIR}/Python.h")
-		message(FATAL_ERROR
-			"Missing: \"${PYTHON_INCLUDE_DIR}/Python.h\",\n"
-			"Set the cache entry 'PYTHON_INCLUDE_DIR' to point "
-			"to a valid python include path. Containing "
-			"Python.h for python version \"${PYTHON_VERSION}\""
-		)
-	endif()
-
-	if(WIN32 OR APPLE)
-		# Windows and macOS have this bundled with Python libraries.
-	elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
-		if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND))
-			find_python_package(numpy)
-			unset(PYTHON_NUMPY_INCLUDE_DIRS CACHE)
-			set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
-			mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
-		endif()
-	endif()
-
-	if(WIN32 OR APPLE)
-		# pass, we have this in lib/python/site-packages
-	elseif(WITH_PYTHON_INSTALL_REQUESTS)
-		find_python_package(requests)
-	endif()
+  if(NOT EXISTS "${PYTHON_INCLUDE_DIR}/Python.h")
+    message(FATAL_ERROR
+      "Missing: \"${PYTHON_INCLUDE_DIR}/Python.h\",\n"
+      "Set the cache entry 'PYTHON_INCLUDE_DIR' to point "
+      "to a valid python include path. Containing "
+      "Python.h for python version \"${PYTHON_VERSION}\""
+    )
+  endif()
+
+  if(WIN32 OR APPLE)
+    # Windows and macOS have this bundled with Python libraries.
+  elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
+    if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND))
+      find_python_package(numpy)
+      unset(PYTHON_NUMPY_INCLUDE_DIRS CACHE)
+      set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
+      mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
+    endif()
+  endif()
+
+  if(WIN32 OR APPLE)
+    # pass, we have this in lib/python/site-packages
+  elseif(WITH_PYTHON_INSTALL_REQUESTS)
+    find_python_package(requests)
+  endif()
 endif()
 
 if(
-	CMAKE_COMPILER_IS_GNUCC OR
-	CMAKE_C_COMPILER_ID MATCHES "Clang" OR
-	CMAKE_C_COMPILER_ID MATCHES "Intel"
+  CMAKE_COMPILER_IS_GNUCC OR
+  CMAKE_C_COMPILER_ID MATCHES "Clang" OR
+  CMAKE_C_COMPILER_ID MATCHES "Intel"
 )
-	# TODO(sergey): Do we want c++11 or gnu-c++11 here?
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+  # TODO(sergey): Do we want c++11 or gnu-c++11 here?
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
 elseif(MSVC)
-	# Nothing special is needed, C++11 features are available by default.
+  # Nothing special is needed, C++11 features are available by default.
 else()
-	message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++11 build")
+  message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++11 build")
 endif()
 
 # Visual Studio has all standards it supports available by default
 # Clang on windows copies this behavior and does not support these switches
 if(
-	CMAKE_COMPILER_IS_GNUCC OR
-	(CMAKE_C_COMPILER_ID MATCHES "Clang" AND (NOT MSVC)) OR
-	(CMAKE_C_COMPILER_ID MATCHES "Intel")
+  CMAKE_COMPILER_IS_GNUCC OR
+  (CMAKE_C_COMPILER_ID MATCHES "Clang" AND (NOT MSVC)) OR
+  (CMAKE_C_COMPILER_ID MATCHES "Intel")
 )
-	# Use C11 + GNU extensions, works with GCC, Clang, ICC
-	set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
+  # Use C11 + GNU extensions, works with GCC, Clang, ICC
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
 endif()
 
 # Include warnings first, so its possible to disable them with user defined flags
@@ -1551,19 +1551,19 @@ set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS}")
 
 # defined above, platform specific but shared names
 mark_as_advanced(
-	CYCLES_OSL
-	OSL_LIB_EXEC
-	OSL_COMPILER
-	OSL_LIB_COMP
-	OSL_LIB_QUERY
-	OSL_INCLUDE_DIR
+  CYCLES_OSL
+  OSL_LIB_EXEC
+  OSL_COMPILER
+  OSL_LIB_COMP
+  OSL_LIB_QUERY
+  OSL_INCLUDE_DIR
 )
 
 mark_as_advanced(
-	LLVM_CONFIG
-	LLVM_ROOT_DIR
-	LLVM_LIBRARY
-	LLVM_VERSION
+  LLVM_CONFIG
+  LLVM_ROOT_DIR
+  LLVM_LIBRARY
+  LLVM_VERSION
 )
 
 #-------------------------------------------------------------------------------
@@ -1571,12 +1571,12 @@ mark_as_advanced(
 
 # better not set includes here but this debugging option is off by default.
 if(WITH_CXX_GUARDEDALLOC)
-	include_directories(${CMAKE_SOURCE_DIR}/intern/guardedalloc)
-	add_definitions(-DWITH_CXX_GUARDEDALLOC)
+  include_directories(${CMAKE_SOURCE_DIR}/intern/guardedalloc)
+  add_definitions(-DWITH_CXX_GUARDEDALLOC)
 endif()
 
 if(WITH_ASSERT_ABORT)
-	add_definitions(-DWITH_ASSERT_ABORT)
+  add_definitions(-DWITH_ASSERT_ABORT)
 endif()
 
 # message(STATUS "Using CFLAGS: ${CMAKE_C_FLAGS}")
@@ -1586,31 +1586,31 @@ endif()
 # Libraries
 
 if(WITH_GTESTS)
-	include(GTestTesting)
+  include(GTestTesting)
 endif()
 
 if(WITH_BLENDER)
-	add_subdirectory(intern)
-	add_subdirectory(extern)
+  add_subdirectory(intern)
+  add_subdirectory(extern)
 
-	# source after intern and extern to gather all
-	# internal and external library information first, for test linking
-	add_subdirectory(source)
+  # source after intern and extern to gather all
+  # internal and external library information first, for test linking
+  add_subdirectory(source)
 elseif(WITH_CYCLES_STANDALONE)
-	add_subdirectory(intern/cycles)
-	add_subdirectory(extern/clew)
-	if(WITH_CUDA_DYNLOAD)
-		add_subdirectory(extern/cuew)
-	endif()
-	if(NOT WITH_SYSTEM_GLEW)
-		add_subdirectory(extern/glew)
-	endif()
+  add_subdirectory(intern/cycles)
+  add_subdirectory(extern/clew)
+  if(WITH_CUDA_DYNLOAD)
+    add_subdirectory(extern/cuew)
+  endif()
+  if(NOT WITH_SYSTEM_GLEW)
+    add_subdirectory(extern/glew)
+  endif()
 endif()
 
 #-----------------------------------------------------------------------------
 # Blender Application
 if(WITH_BLENDER)
-	add_subdirectory(source/creator)
+  add_subdirectory(source/creator)
 endif()
 
 
@@ -1626,7 +1626,7 @@ include(build_files/cmake/packaging.cmake)
 #-----------------------------------------------------------------------------
 # Use dynamic loading for OpenMP
 if(WITH_BLENDER)
-	openmp_delayload(blender)
+  openmp_delayload(blender)
 endif()
 
 #-----------------------------------------------------------------------------
@@ -1634,111 +1634,111 @@ endif()
 
 if(FIRST_RUN)
 
-	set(_config_msg "\nBlender Configuration\n=====================")
-
-	function(info_cfg_option
-		_setting
-		)
-
-		set(_msg "  - ${_setting}")
-		string(LENGTH "${_msg}" _len)
-		while("32" GREATER "${_len}")
-			set(_msg "${_msg} ")
-			math(EXPR _len "${_len} + 1")
-		endwhile()
-
-		set(_config_msg "${_config_msg}\n${_msg}${${_setting}}" PARENT_SCOPE)
-	endfunction()
-
-	function(info_cfg_text
-		_text
-		)
-
-		set(_config_msg "${_config_msg}\n\n  ${_text}" PARENT_SCOPE)
-	endfunction()
-
-	message(STATUS "C Compiler:   \"${CMAKE_C_COMPILER_ID}\"")
-	message(STATUS "C++ Compiler: \"${CMAKE_CXX_COMPILER_ID}\"")
-
-	info_cfg_text("Build Options:")
-	info_cfg_option(WITH_BULLET)
-	info_cfg_option(WITH_IK_SOLVER)
-	info_cfg_option(WITH_IK_ITASC)
-	info_cfg_option(WITH_OPENCOLLADA)
-	info_cfg_option(WITH_FFTW3)
-	info_cfg_option(WITH_INTERNATIONAL)
-	info_cfg_option(WITH_INPUT_NDOF)
-	info_cfg_option(WITH_CYCLES)
-	info_cfg_option(WITH_FREESTYLE)
-	info_cfg_option(WITH_OPENCOLORIO)
-	info_cfg_option(WITH_OPENVDB)
-	info_cfg_option(WITH_ALEMBIC)
-
-	info_cfg_text("Compiler Options:")
-	info_cfg_option(WITH_BUILDINFO)
-	info_cfg_option(WITH_OPENMP)
-	info_cfg_option(WITH_RAYOPTIMIZATION)
-
-	info_cfg_text("System Options:")
-	info_cfg_option(WITH_INSTALL_PORTABLE)
-	info_cfg_option(WITH_X11_ALPHA)
-	info_cfg_option(WITH_X11_XF86VMODE)
-	info_cfg_option(WITH_X11_XFIXES)
-	info_cfg_option(WITH_X11_XINPUT)
-	info_cfg_option(WITH_MEM_JEMALLOC)
-	info_cfg_option(WITH_MEM_VALGRIND)
-	info_cfg_option(WITH_SYSTEM_GLEW)
-
-	info_cfg_text("Image Formats:")
-	info_cfg_option(WITH_OPENIMAGEIO)
-	info_cfg_option(WITH_IMAGE_CINEON)
-	info_cfg_option(WITH_IMAGE_DDS)
-	info_cfg_option(WITH_IMAGE_HDR)
-	info_cfg_option(WITH_IMAGE_OPENEXR)
-	info_cfg_option(WITH_IMAGE_OPENJPEG)
-	info_cfg_option(WITH_IMAGE_TIFF)
-
-	info_cfg_text("Audio:")
-	info_cfg_option(WITH_OPENAL)
-	info_cfg_option(WITH_SDL)
-	info_cfg_option(WITH_SDL_DYNLOAD)
-	info_cfg_option(WITH_JACK)
-	info_cfg_option(WITH_JACK_DYNLOAD)
-	info_cfg_option(WITH_CODEC_AVI)
-	info_cfg_option(WITH_CODEC_FFMPEG)
-	info_cfg_option(WITH_CODEC_SNDFILE)
-
-	info_cfg_text("Compression:")
-	info_cfg_option(WITH_LZMA)
-	info_cfg_option(WITH_LZO)
-
-	info_cfg_text("Python:")
-	info_cfg_option(WITH_PYTHON_INSTALL)
-	info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
-	info_cfg_option(WITH_PYTHON_MODULE)
-	info_cfg_option(WITH_PYTHON_SAFETY)
-	if(APPLE)
-		info_cfg_option(WITH_PYTHON_FRAMEWORK)
-	endif()
-
-	info_cfg_text("Modifiers:")
-	info_cfg_option(WITH_MOD_REMESH)
-	info_cfg_option(WITH_MOD_FLUID)
-	info_cfg_option(WITH_MOD_OCEANSIM)
-
-	info_cfg_text("OpenGL:")
-	info_cfg_option(WITH_GLEW_ES)
-	info_cfg_option(WITH_GL_EGL)
-	info_cfg_option(WITH_GL_PROFILE_ES20)
-	if(WIN32)
-		info_cfg_option(WITH_GL_ANGLE)
-	endif()
-
-	info_cfg_text("")
-
-	message("${_config_msg}")
+  set(_config_msg "\nBlender Configuration\n=====================")
+
+  function(info_cfg_option
+    _setting
+    )
+
+    set(_msg "  - ${_setting}")
+    string(LENGTH "${_msg}" _len)
+    while("32" GREATER "${_len}")
+      set(_msg "${_msg} ")
+      math(EXPR _len "${_len} + 1")
+    endwhile()
+
+    set(_config_msg "${_config_msg}\n${_msg}${${_setting}}" PARENT_SCOPE)
+  endfunction()
+
+  function(info_cfg_text
+    _text
+    )
+
+    set(_config_msg "${_config_msg}\n\n  ${_text}" PARENT_SCOPE)
+  endfunction()
+
+  message(STATUS "C Compiler:   \"${CMAKE_C_COMPILER_ID}\"")
+  message(STATUS "C++ Compiler: \"${CMAKE_CXX_COMPILER_ID}\"")
+
+  info_cfg_text("Build Options:")
+  info_cfg_option(WITH_BULLET)
+  info_cfg_option(WITH_IK_SOLVER)
+  info_cfg_option(WITH_IK_ITASC)
+  info_cfg_option(WITH_OPENCOLLADA)
+  info_cfg_option(WITH_FFTW3)
+  info_cfg_option(WITH_INTERNATIONAL)
+  info_cfg_option(WITH_INPUT_NDOF)
+  info_cfg_option(WITH_CYCLES)
+  info_cfg_option(WITH_FREESTYLE)
+  info_cfg_option(WITH_OPENCOLORIO)
+  info_cfg_option(WITH_OPENVDB)
+  info_cfg_option(WITH_ALEMBIC)
+
+  info_cfg_text("Compiler Options:")
+  info_cfg_option(WITH_BUILDINFO)
+  info_cfg_option(WITH_OPENMP)
+  info_cfg_option(WITH_RAYOPTIMIZATION)
+
+  info_cfg_text("System Options:")
+  info_cfg_option(WITH_INSTALL_PORTABLE)
+  info_cfg_option(WITH_X11_ALPHA)
+  info_cfg_option(WITH_X11_XF86VMODE)
+  info_cfg_option(WITH_X11_XFIXES)
+  info_cfg_option(WITH_X11_XINPUT)
+  info_cfg_option(WITH_MEM_JEMALLOC)
+  info_cfg_option(WITH_MEM_VALGRIND)
+  info_cfg_option(WITH_SYSTEM_GLEW)
+
+  info_cfg_text("Image Formats:")
+  info_cfg_option(WITH_OPENIMAGEIO)
+  info_cfg_option(WITH_IMAGE_CINEON)
+  info_cfg_option(WITH_IMAGE_DDS)
+  info_cfg_option(WITH_IMAGE_HDR)
+  info_cfg_option(WITH_IMAGE_OPENEXR)
+  info_cfg_option(WITH_IMAGE_OPENJPEG)
+  info_cfg_option(WITH_IMAGE_TIFF)
+
+  info_cfg_text("Audio:")
+  info_cfg_option(WITH_OPENAL)
+  info_cfg_option(WITH_SDL)
+  info_cfg_option(WITH_SDL_DYNLOAD)
+  info_cfg_option(WITH_JACK)
+  info_cfg_option(WITH_JACK_DYNLOAD)
+  info_cfg_option(WITH_CODEC_AVI)
+  info_cfg_option(WITH_CODEC_FFMPEG)
+  info_cfg_option(WITH_CODEC_SNDFILE)
+
+  info_cfg_text("Compression:")
+  info_cfg_option(WITH_LZMA)
+  info_cfg_option(WITH_LZO)
+
+  info_cfg_text("Python:")
+  info_cfg_option(WITH_PYTHON_INSTALL)
+  info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
+  info_cfg_option(WITH_PYTHON_MODULE)
+  info_cfg_option(WITH_PYTHON_SAFETY)
+  if(APPLE)
+    info_cfg_option(WITH_PYTHON_FRAMEWORK)
+  endif()
+
+  info_cfg_text("Modifiers:")
+  info_cfg_option(WITH_MOD_REMESH)
+  info_cfg_option(WITH_MOD_FLUID)
+  info_cfg_option(WITH_MOD_OCEANSIM)
+
+  info_cfg_text("OpenGL:")
+  info_cfg_option(WITH_GLEW_ES)
+  info_cfg_option(WITH_GL_EGL)
+  info_cfg_option(WITH_GL_PROFILE_ES20)
+  if(WIN32)
+    info_cfg_option(WITH_GL_ANGLE)
+  endif()
+
+  info_cfg_text("")
+
+  message("${_config_msg}")
 endif()
 
 if(0)
-	print_all_vars()
+  print_all_vars()
 endif()
diff --git a/build_files/build_environment/CMakeLists.txt b/build_files/build_environment/CMakeLists.txt
index 1760e00e150dac784dfb2d6af228fd90ecf76983..c21ed8267361057fb62b069b8b9601e368a18e94 100644
--- a/build_files/build_environment/CMakeLists.txt
+++ b/build_files/build_environment/CMakeLists.txt
@@ -47,13 +47,13 @@ include(cmake/options.cmake)
 include(cmake/versions.cmake)
 
 if(ENABLE_MINGW64)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		include(cmake/setup_mingw64.cmake)
-	else()
-		include(cmake/setup_mingw32.cmake)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    include(cmake/setup_mingw64.cmake)
+  else()
+    include(cmake/setup_mingw32.cmake)
+  endif()
 else()
-	set(mingw_LIBDIR ${LIBDIR})
+  set(mingw_LIBDIR ${LIBDIR})
 endif()
 
 include(cmake/zlib.cmake)
@@ -94,61 +94,61 @@ include(cmake/numpy.cmake)
 include(cmake/pugixml.cmake)
 
 if(WITH_WEBP)
-	include(cmake/webp.cmake)
+  include(cmake/webp.cmake)
 endif()
 
 if(WITH_EMBREE)
-	include(cmake/embree.cmake)
+  include(cmake/embree.cmake)
 endif()
 
 if(WIN32)
-	# HMD branch deps
-	include(cmake/hidapi.cmake)
-	# OCIO deps
-	include(cmake/tinyxml.cmake)
-	include(cmake/yamlcpp.cmake)
-	# LCMS is an OCIO dep, but only if you build the apps, leaving it here for convenience
-	#include(cmake/lcms.cmake)
+  # HMD branch deps
+  include(cmake/hidapi.cmake)
+  # OCIO deps
+  include(cmake/tinyxml.cmake)
+  include(cmake/yamlcpp.cmake)
+  # LCMS is an OCIO dep, but only if you build the apps, leaving it here for convenience
+  #include(cmake/lcms.cmake)
 
 endif()
 
 if(NOT WIN32 OR ENABLE_MINGW64)
-	include(cmake/openjpeg.cmake)
-	if(NOT WIN32 OR BUILD_MODE STREQUAL Release)
-		if(WIN32)
-			include(cmake/zlib_mingw.cmake)
-		endif()
-		include(cmake/lame.cmake)
-		include(cmake/ogg.cmake)
-		include(cmake/vorbis.cmake)
-		include(cmake/theora.cmake)
-		include(cmake/vpx.cmake)
-		include(cmake/x264.cmake)
-		include(cmake/xvidcore.cmake)
-		include(cmake/faad.cmake)
-		include(cmake/ffmpeg.cmake)
-		include(cmake/fftw.cmake)
-		include(cmake/sndfile.cmake)
-		if(WIN32)
-			include(cmake/iconv.cmake)
-		endif()
-		if(UNIX)
-			include(cmake/flac.cmake)
-			include(cmake/xml2.cmake)
-			if(NOT APPLE)
-				include(cmake/spnav.cmake)
-				include(cmake/jemalloc.cmake)
-			endif()
-		endif()
-	endif()
+  include(cmake/openjpeg.cmake)
+  if(NOT WIN32 OR BUILD_MODE STREQUAL Release)
+    if(WIN32)
+      include(cmake/zlib_mingw.cmake)
+    endif()
+    include(cmake/lame.cmake)
+    include(cmake/ogg.cmake)
+    include(cmake/vorbis.cmake)
+    include(cmake/theora.cmake)
+    include(cmake/vpx.cmake)
+    include(cmake/x264.cmake)
+    include(cmake/xvidcore.cmake)
+    include(cmake/faad.cmake)
+    include(cmake/ffmpeg.cmake)
+    include(cmake/fftw.cmake)
+    include(cmake/sndfile.cmake)
+    if(WIN32)
+      include(cmake/iconv.cmake)
+    endif()
+    if(UNIX)
+      include(cmake/flac.cmake)
+      include(cmake/xml2.cmake)
+      if(NOT APPLE)
+        include(cmake/spnav.cmake)
+        include(cmake/jemalloc.cmake)
+      endif()
+    endif()
+  endif()
 endif()
 
 if(UNIX)
-	include(cmake/bzip2.cmake)
-	include(cmake/ffi.cmake)
-	include(cmake/lzma.cmake)
-	include(cmake/ssl.cmake)
-	include(cmake/sqlite.cmake)
+  include(cmake/bzip2.cmake)
+  include(cmake/ffi.cmake)
+  include(cmake/lzma.cmake)
+  include(cmake/ssl.cmake)
+  include(cmake/sqlite.cmake)
 endif()
 
 include(cmake/harvest.cmake)
diff --git a/build_files/build_environment/cmake/alembic.cmake b/build_files/build_environment/cmake/alembic.cmake
index e6323d536615f8800e6d43474cd904e8e94c572d..fa2d7243f7d194f2d514662e064039b9bff47087 100644
--- a/build_files/build_environment/cmake/alembic.cmake
+++ b/build_files/build_environment/cmake/alembic.cmake
@@ -17,89 +17,89 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(ALEMBIC_HDF5)
-	set(ALEMBIC_HDF5_HL)
-	# in debug mode we do not build HDF5_hdf5_hl_LIBRARY which makes cmake really
-	# unhappy, stub it with the debug mode lib. it's not linking it in at this
-	# point in time anyhow
-	if(BUILD_MODE STREQUAL Debug)
-		set(ALEMBIC_HDF5_HL -DHDF5_hdf5_hl_LIBRARY=${LIBDIR}/hdf5/lib/libhdf5_hl_D.${LIBEXT})
-	endif()
+  set(ALEMBIC_HDF5_HL)
+  # in debug mode we do not build HDF5_hdf5_hl_LIBRARY which makes cmake really
+  # unhappy, stub it with the debug mode lib. it's not linking it in at this
+  # point in time anyhow
+  if(BUILD_MODE STREQUAL Debug)
+    set(ALEMBIC_HDF5_HL -DHDF5_hdf5_hl_LIBRARY=${LIBDIR}/hdf5/lib/libhdf5_hl_D.${LIBEXT})
+  endif()
 endif()
 
 if(WIN32)
-	set(ALEMBIC_ILMBASE ${LIBDIR}/openexr)
+  set(ALEMBIC_ILMBASE ${LIBDIR}/openexr)
 else()
-	set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase)
+  set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase)
 endif()
 
 set(ALEMBIC_EXTRA_ARGS
-	-DBUILDSTATIC=ON
-	-DLINKSTATIC=ON
-	-DALEMBIC_LIB_USES_BOOST=ON
-	-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
-	-DBoost_USE_MULTITHREADED=ON
-	-DUSE_STATIC_BOOST=On
-	-DBoost_USE_STATIC_LIBS=ON
-	-DBoost_USE_STATIC_RUNTIME=ON
-	-DBoost_DEBUG=ON
-	-DBOOST_ROOT=${LIBDIR}/boost
-	-DBoost_NO_SYSTEM_PATHS=ON
-	-DILMBASE_ROOT=${ALEMBIC_ILMBASE}
-	-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR
-	-DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DUSE_PYILMBASE=0
-	-DUSE_PYALEMBIC=0
-	-DUSE_ARNOLD=0
-	-DUSE_MAYA=0
-	-DUSE_PRMAN=0
-	-DUSE_HDF5=Off
-	-DUSE_STATIC_HDF5=Off
-	-DHDF5_ROOT=${LIBDIR}/hdf5
-	-DUSE_TESTS=Off
-	-DALEMBIC_NO_OPENGL=1
-	-DUSE_BINARIES=ON
-	-DALEMBIC_ILMBASE_LINK_STATIC=On
-	-DALEMBIC_SHARED_LIBS=OFF
-	-DGLUT_INCLUDE_DIR=""
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-	${ALEMBIC_HDF5_HL}
+  -DBUILDSTATIC=ON
+  -DLINKSTATIC=ON
+  -DALEMBIC_LIB_USES_BOOST=ON
+  -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
+  -DBoost_USE_MULTITHREADED=ON
+  -DUSE_STATIC_BOOST=On
+  -DBoost_USE_STATIC_LIBS=ON
+  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBoost_DEBUG=ON
+  -DBOOST_ROOT=${LIBDIR}/boost
+  -DBoost_NO_SYSTEM_PATHS=ON
+  -DILMBASE_ROOT=${ALEMBIC_ILMBASE}
+  -DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR
+  -DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DUSE_PYILMBASE=0
+  -DUSE_PYALEMBIC=0
+  -DUSE_ARNOLD=0
+  -DUSE_MAYA=0
+  -DUSE_PRMAN=0
+  -DUSE_HDF5=Off
+  -DUSE_STATIC_HDF5=Off
+  -DHDF5_ROOT=${LIBDIR}/hdf5
+  -DUSE_TESTS=Off
+  -DALEMBIC_NO_OPENGL=1
+  -DUSE_BINARIES=ON
+  -DALEMBIC_ILMBASE_LINK_STATIC=On
+  -DALEMBIC_SHARED_LIBS=OFF
+  -DGLUT_INCLUDE_DIR=""
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+  ${ALEMBIC_HDF5_HL}
 )
 
 ExternalProject_Add(external_alembic
-	URL ${ALEMBIC_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${ALEMBIC_MD5}
-	PREFIX ${BUILD_DIR}/alembic
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/alembic -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${ALEMBIC_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/alembic
+  URL ${ALEMBIC_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${ALEMBIC_MD5}
+  PREFIX ${BUILD_DIR}/alembic
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/alembic -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${ALEMBIC_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/alembic
 )
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_alembic after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/alembic ${HARVEST_TARGET}/alembic
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_alembic after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/alembic/lib/alembic.lib ${HARVEST_TARGET}/alembic/lib/alembic_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_alembic after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/alembic ${HARVEST_TARGET}/alembic
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_alembic after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/alembic/lib/alembic.lib ${HARVEST_TARGET}/alembic/lib/alembic_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
 
 
 
 add_dependencies(
-	external_alembic
-	external_boost
-	external_zlib
-	external_ilmbase
-	external_openexr
+  external_alembic
+  external_boost
+  external_zlib
+  external_ilmbase
+  external_openexr
 )
diff --git a/build_files/build_environment/cmake/blendthumb.cmake b/build_files/build_environment/cmake/blendthumb.cmake
index b3064016403db39d3adf8decd2ce3a9fa1b0faf2..f4cc6ee9d37931ee8e201cc1956a6a8fed057d5c 100644
--- a/build_files/build_environment/cmake/blendthumb.cmake
+++ b/build_files/build_environment/cmake/blendthumb.cmake
@@ -17,51 +17,51 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(BUILD_MODE STREQUAL Release)
-	if(WIN32)
-		set(THUMB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../release/windows/blendthumb)
+  if(WIN32)
+    set(THUMB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../release/windows/blendthumb)
 
-		ExternalProject_Add(external_zlib_32
-			URL ${ZLIB_URI}
-			CMAKE_GENERATOR ${GENERATOR_32}
-			URL_HASH MD5=${ZLIB_HASH}
-			DOWNLOAD_DIR ${DOWNLOAD_DIR}
-			PREFIX ${BUILD_DIR}/zlib32
-			CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib32 ${DEFAULT_CMAKE_FLAGS}
-			INSTALL_DIR ${LIBDIR}/zlib32
-		)
+    ExternalProject_Add(external_zlib_32
+      URL ${ZLIB_URI}
+      CMAKE_GENERATOR ${GENERATOR_32}
+      URL_HASH MD5=${ZLIB_HASH}
+      DOWNLOAD_DIR ${DOWNLOAD_DIR}
+      PREFIX ${BUILD_DIR}/zlib32
+      CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib32 ${DEFAULT_CMAKE_FLAGS}
+      INSTALL_DIR ${LIBDIR}/zlib32
+    )
 
-		ExternalProject_Add(external_zlib_64
-			URL ${ZLIB_URI}
-			CMAKE_GENERATOR ${GENERATOR_64}
-			URL_HASH MD5=${ZLIB_HASH}
-			DOWNLOAD_DIR ${DOWNLOAD_DIR}
-			PREFIX ${BUILD_DIR}/zlib64
-			CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib64 ${DEFAULT_CMAKE_FLAGS}
-			INSTALL_DIR ${LIBDIR}/zlib64
-		)
+    ExternalProject_Add(external_zlib_64
+      URL ${ZLIB_URI}
+      CMAKE_GENERATOR ${GENERATOR_64}
+      URL_HASH MD5=${ZLIB_HASH}
+      DOWNLOAD_DIR ${DOWNLOAD_DIR}
+      PREFIX ${BUILD_DIR}/zlib64
+      CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib64 ${DEFAULT_CMAKE_FLAGS}
+      INSTALL_DIR ${LIBDIR}/zlib64
+    )
 
-		ExternalProject_Add(external_blendthumb_32
-			CMAKE_GENERATOR ${GENERATOR_32}
-			SOURCE_DIR ${THUMB_DIR}
-			PREFIX ${BUILD_DIR}/blendthumb32
-			CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb32 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib32/include -DZLIB_LIBS=${LIBDIR}/zlib32/lib/zlibstatic.lib
-			INSTALL_DIR ${LIBDIR}/blendthumb32
-		)
-		add_dependencies(
-			external_blendthumb_32
-			external_zlib_32
-		)
+    ExternalProject_Add(external_blendthumb_32
+      CMAKE_GENERATOR ${GENERATOR_32}
+      SOURCE_DIR ${THUMB_DIR}
+      PREFIX ${BUILD_DIR}/blendthumb32
+      CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb32 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib32/include -DZLIB_LIBS=${LIBDIR}/zlib32/lib/zlibstatic.lib
+      INSTALL_DIR ${LIBDIR}/blendthumb32
+    )
+    add_dependencies(
+      external_blendthumb_32
+      external_zlib_32
+    )
 
-		ExternalProject_Add(external_blendthumb_64
-			CMAKE_GENERATOR ${GENERATOR_64}
-			SOURCE_DIR ${THUMB_DIR}
-			PREFIX ${BUILD_DIR}/blendthumb64
-			CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb64 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib64/include -DZLIB_LIBS=${LIBDIR}/zlib64/lib/zlibstatic.lib
-			INSTALL_DIR ${LIBDIR}/blendthumb64
-		)
-		add_dependencies(
-			external_blendthumb_64
-			external_zlib_64
-		)
-	endif()
+    ExternalProject_Add(external_blendthumb_64
+      CMAKE_GENERATOR ${GENERATOR_64}
+      SOURCE_DIR ${THUMB_DIR}
+      PREFIX ${BUILD_DIR}/blendthumb64
+      CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blendThumb64 ${DEFAULT_CMAKE_FLAGS} -DZLIB_INCLUDE=${LIBDIR}/zlib64/include -DZLIB_LIBS=${LIBDIR}/zlib64/lib/zlibstatic.lib
+      INSTALL_DIR ${LIBDIR}/blendthumb64
+    )
+    add_dependencies(
+      external_blendthumb_64
+      external_zlib_64
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/blosc.cmake b/build_files/build_environment/cmake/blosc.cmake
index 1cbf97063c009abda9cd1c1eca7a979a4af34181..c7f3cbb8dfac1d2fea8cec765c0a2be39bf17997 100644
--- a/build_files/build_environment/cmake/blosc.cmake
+++ b/build_files/build_environment/cmake/blosc.cmake
@@ -17,59 +17,59 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(BLOSC_EXTRA_ARGS
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DBUILD_TESTS=OFF
-	-DBUILD_BENCHMARKS=OFF
-	-DCMAKE_DEBUG_POSTFIX=_d
-	-DThreads_FOUND=1
-	-DPTHREAD_LIBS=${LIBDIR}/pthreads/lib/pthreadVC3.lib
-	-DPTHREAD_INCLUDE_DIR=${LIBDIR}/pthreads/inc
-	-DDEACTIVATE_SNAPPY=ON
-	-DCMAKE_POSITION_INDEPENDENT_CODE=ON
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DBUILD_TESTS=OFF
+  -DBUILD_BENCHMARKS=OFF
+  -DCMAKE_DEBUG_POSTFIX=_d
+  -DThreads_FOUND=1
+  -DPTHREAD_LIBS=${LIBDIR}/pthreads/lib/pthreadVC3.lib
+  -DPTHREAD_INCLUDE_DIR=${LIBDIR}/pthreads/inc
+  -DDEACTIVATE_SNAPPY=ON
+  -DCMAKE_POSITION_INDEPENDENT_CODE=ON
 )
 
 if(WIN32)
-	#prevent blosc from including it's own local copy of zlib in the object file
-	#and cause linker errors with everybody else
-	set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
-		-DPREFER_EXTERNAL_ZLIB=ON
-	)
+  #prevent blosc from including it's own local copy of zlib in the object file
+  #and cause linker errors with everybody else
+  set(BLOSC_EXTRA_ARGS ${BLOSC_EXTRA_ARGS}
+    -DPREFER_EXTERNAL_ZLIB=ON
+  )
 endif()
 
 ExternalProject_Add(external_blosc
-	URL ${BLOSC_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${BLOSC_HASH}
-	PREFIX ${BUILD_DIR}/blosc
-	PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/blosc/src/external_blosc < ${PATCH_DIR}/blosc.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/blosc
+  URL ${BLOSC_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${BLOSC_HASH}
+  PREFIX ${BUILD_DIR}/blosc
+  PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/blosc/src/external_blosc < ${PATCH_DIR}/blosc.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/blosc
 )
 
 add_dependencies(
-	external_blosc
-	external_zlib
+  external_blosc
+  external_zlib
 )
 if(WIN32)
-	add_dependencies(
-		external_blosc
-		external_pthreads
-	)
+  add_dependencies(
+    external_blosc
+    external_pthreads
+  )
 endif()
 
 if (WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_blosc after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc.lib ${HARVEST_TARGET}/blosc/lib/libblosc.lib
-			COMMAND	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/blosc/include/ ${HARVEST_TARGET}/blosc/include/
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_blosc after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc_d.lib ${HARVEST_TARGET}/blosc/lib/libblosc_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_blosc after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc.lib ${HARVEST_TARGET}/blosc/lib/libblosc.lib
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/blosc/include/ ${HARVEST_TARGET}/blosc/include/
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_blosc after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/blosc/lib/libblosc_d.lib ${HARVEST_TARGET}/blosc/lib/libblosc_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/boost.cmake b/build_files/build_environment/cmake/boost.cmake
index 33bfa1d4e82106d732af834d9d37ede536cfc246..7fcd7e754ae081e7cf17409bb0ebb31cc2cac508 100644
--- a/build_files/build_environment/cmake/boost.cmake
+++ b/build_files/build_environment/cmake/boost.cmake
@@ -19,91 +19,91 @@
 set(BOOST_ADDRESS_MODEL 64)
 
 if(WIN32)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(PYTHON_ARCH x64)
-		set(PYTHON_ARCH2 win-AMD64)
-		set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/amd64/)
-	else()
-		set(PYTHON_ARCH x86)
-		set(PYTHON_ARCH2 win32)
-		set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/win32/)
-		set(BOOST_ADDRESS_MODEL 32)
-	endif()
-	if(MSVC14)
-		set(BOOST_TOOLSET toolset=msvc-14.0)
-		set(BOOST_COMPILER_STRING -vc140)
-	endif()
-	set(JAM_FILE ${BUILD_DIR}/boost/src/external_boost/user-config.jam)
-	set(semi_path "${PATCH_DIR}/semi.txt")
-	FILE(TO_NATIVE_PATH ${semi_path} semi_path)
-	set(BOOST_CONFIGURE_COMMAND bootstrap.bat &&
-								echo using python : ${PYTHON_OUTPUTDIR}\\python.exe > "${JAM_FILE}" &&
-								echo.   : ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/pc >> "${JAM_FILE}" &&
-								echo.   : ${BUILD_DIR}/python/src/external_python/pcbuild >> "${JAM_FILE}" &&
-								type ${semi_path} >> "${JAM_FILE}"
-	)
-	set(BOOST_BUILD_COMMAND bjam)
-	#--user-config=user-config.jam
-	set(BOOST_BUILD_OPTIONS runtime-link=static )
-	#set(BOOST_WITH_PYTHON --with-python)
-	set(BOOST_HARVEST_CMD 	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ )
-	if(BUILD_MODE STREQUAL Release)
-		set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(PYTHON_ARCH x64)
+    set(PYTHON_ARCH2 win-AMD64)
+    set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/amd64/)
+  else()
+    set(PYTHON_ARCH x86)
+    set(PYTHON_ARCH2 win32)
+    set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/win32/)
+    set(BOOST_ADDRESS_MODEL 32)
+  endif()
+  if(MSVC14)
+    set(BOOST_TOOLSET toolset=msvc-14.0)
+    set(BOOST_COMPILER_STRING -vc140)
+  endif()
+  set(JAM_FILE ${BUILD_DIR}/boost/src/external_boost/user-config.jam)
+  set(semi_path "${PATCH_DIR}/semi.txt")
+  FILE(TO_NATIVE_PATH ${semi_path} semi_path)
+  set(BOOST_CONFIGURE_COMMAND bootstrap.bat &&
+                echo using python : ${PYTHON_OUTPUTDIR}\\python.exe > "${JAM_FILE}" &&
+                echo.   : ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/pc >> "${JAM_FILE}" &&
+                echo.   : ${BUILD_DIR}/python/src/external_python/pcbuild >> "${JAM_FILE}" &&
+                type ${semi_path} >> "${JAM_FILE}"
+  )
+  set(BOOST_BUILD_COMMAND bjam)
+  #--user-config=user-config.jam
+  set(BOOST_BUILD_OPTIONS runtime-link=static )
+  #set(BOOST_WITH_PYTHON --with-python)
+  set(BOOST_HARVEST_CMD   ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ )
+  if(BUILD_MODE STREQUAL Release)
+    set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/)
+  endif()
 
 elseif(APPLE)
-	set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
-	set(BOOST_BUILD_COMMAND ./b2)
-	set(BOOST_BUILD_OPTIONS toolset=darwin cxxflags=${PLATFORM_CXXFLAGS} linkflags=${PLATFORM_LDFLAGS} --disable-icu boost.locale.icu=off)
-	set(BOOST_HARVEST_CMD echo .)
-	set(BOOST_PATCH_COMMAND echo .)
+  set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
+  set(BOOST_BUILD_COMMAND ./b2)
+  set(BOOST_BUILD_OPTIONS toolset=darwin cxxflags=${PLATFORM_CXXFLAGS} linkflags=${PLATFORM_LDFLAGS} --disable-icu boost.locale.icu=off)
+  set(BOOST_HARVEST_CMD echo .)
+  set(BOOST_PATCH_COMMAND echo .)
 else()
-	set(BOOST_HARVEST_CMD echo .)
-	set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
-	set(BOOST_BUILD_COMMAND ./b2)
-	set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
-	set(BOOST_PATCH_COMMAND echo .)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(BOOST_ADDRESS_MODEL 64)
-	else()
-		set(BOOST_ADDRESS_MODEL 32)
-	endif()
+  set(BOOST_HARVEST_CMD echo .)
+  set(BOOST_CONFIGURE_COMMAND ./bootstrap.sh)
+  set(BOOST_BUILD_COMMAND ./b2)
+  set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
+  set(BOOST_PATCH_COMMAND echo .)
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(BOOST_ADDRESS_MODEL 64)
+  else()
+    set(BOOST_ADDRESS_MODEL 32)
+  endif()
 endif()
 
 set(BOOST_OPTIONS
-	--with-filesystem
-	--with-locale
-	--with-thread
-	--with-regex
-	--with-system
-	--with-date_time
-	--with-wave
-	--with-atomic
-	--with-serialization
-	--with-program_options
-	--with-iostreams
-	${BOOST_WITH_PYTHON}
-	${BOOST_TOOLSET}
+  --with-filesystem
+  --with-locale
+  --with-thread
+  --with-regex
+  --with-system
+  --with-date_time
+  --with-wave
+  --with-atomic
+  --with-serialization
+  --with-program_options
+  --with-iostreams
+  ${BOOST_WITH_PYTHON}
+  ${BOOST_TOOLSET}
 )
 
 string(TOLOWER ${BUILD_MODE} BOOST_BUILD_TYPE)
 
 ExternalProject_Add(external_boost
-	URL ${BOOST_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${BOOST_HASH}
-	PREFIX ${BUILD_DIR}/boost
-	UPDATE_COMMAND	""
-	PATCH_COMMAND ${BOOST_PATCH_COMMAND}
-	CONFIGURE_COMMAND ${BOOST_CONFIGURE_COMMAND}
-	BUILD_COMMAND ${BOOST_BUILD_COMMAND} ${BOOST_BUILD_OPTIONS} -j${MAKE_THREADS} architecture=x86 address-model=${BOOST_ADDRESS_MODEL} link=static threading=multi ${BOOST_OPTIONS}	--prefix=${LIBDIR}/boost install
-	BUILD_IN_SOURCE 1
-	INSTALL_COMMAND "${BOOST_HARVEST_CMD}"
+  URL ${BOOST_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${BOOST_HASH}
+  PREFIX ${BUILD_DIR}/boost
+  UPDATE_COMMAND  ""
+  PATCH_COMMAND ${BOOST_PATCH_COMMAND}
+  CONFIGURE_COMMAND ${BOOST_CONFIGURE_COMMAND}
+  BUILD_COMMAND ${BOOST_BUILD_COMMAND} ${BOOST_BUILD_OPTIONS} -j${MAKE_THREADS} architecture=x86 address-model=${BOOST_ADDRESS_MODEL} link=static threading=multi ${BOOST_OPTIONS}    --prefix=${LIBDIR}/boost install
+  BUILD_IN_SOURCE 1
+  INSTALL_COMMAND "${BOOST_HARVEST_CMD}"
 )
 
 if(WIN32)
-	add_dependencies(
-		external_boost
-		Make_Python_Environment
-	)
+  add_dependencies(
+    external_boost
+    Make_Python_Environment
+  )
 endif()
diff --git a/build_files/build_environment/cmake/bzip2.cmake b/build_files/build_environment/cmake/bzip2.cmake
index 6c515d10d61998678f9c3750aff16fe9746b316e..fbf5551e71969b6fc286e6e57963b865be24494b 100644
--- a/build_files/build_environment/cmake/bzip2.cmake
+++ b/build_files/build_environment/cmake/bzip2.cmake
@@ -21,19 +21,19 @@ set(BZIP2_CONFIGURE_ENV echo .)
 set(BZIP2_CONFIGURATION_ARGS)
 
 if(UNIX AND NOT APPLE)
-	set(BZIP2_LDFLAGS "-Wl,--as-needed")
-	set(BZIP2_CFLAGS "-fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64")
-	set(BZIP2_CONFIGURE_ENV ${BZIP2_CONFIGURE_ENV} && export LDFLAGS=${BZIP2_LDFLAGS} && export CFLAGS=${BZIP2_CFLAGS}
-		&& export PREFIX=${BZIP2_PREFIX})
+  set(BZIP2_LDFLAGS "-Wl,--as-needed")
+  set(BZIP2_CFLAGS "-fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64")
+  set(BZIP2_CONFIGURE_ENV ${BZIP2_CONFIGURE_ENV} && export LDFLAGS=${BZIP2_LDFLAGS} && export CFLAGS=${BZIP2_CFLAGS}
+    && export PREFIX=${BZIP2_PREFIX})
 endif()
 
 ExternalProject_Add(external_bzip2
-	URL ${BZIP2_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${BZIP2_HASH}
-	PREFIX ${BUILD_DIR}/bzip2
-	CONFIGURE_COMMAND echo .
-	BUILD_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} -j${MAKE_THREADS}
-	INSTALL_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} PREFIX=${BZIP2_PREFIX} install
-	INSTALL_DIR ${LIBDIR}/bzip2
+  URL ${BZIP2_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${BZIP2_HASH}
+  PREFIX ${BUILD_DIR}/bzip2
+  CONFIGURE_COMMAND echo .
+  BUILD_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} -j${MAKE_THREADS}
+  INSTALL_COMMAND ${BZIP2_CONFIGURE_ENV} && cd ${BUILD_DIR}/bzip2/src/external_bzip2/ && make CFLAGS=${BZIP2_CFLAGS} LDFLAGS=${BZIP2_LDFLAGS} PREFIX=${BZIP2_PREFIX} install
+  INSTALL_DIR ${LIBDIR}/bzip2
 )
diff --git a/build_files/build_environment/cmake/clang.cmake b/build_files/build_environment/cmake/clang.cmake
index 699c38a293afa47323554bba044d558eb0f7a386..f1f537baf1d78b4aa4a2d88bbe0eaf836785a683 100644
--- a/build_files/build_environment/cmake/clang.cmake
+++ b/build_files/build_environment/cmake/clang.cmake
@@ -17,47 +17,47 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(CLANG_EXTRA_ARGS
-	-DCLANG_PATH_TO_LLVM_SOURCE=${BUILD_DIR}/ll/src/ll
-	-DCLANG_PATH_TO_LLVM_BUILD=${LIBDIR}/llvm
-	-DLLVM_USE_CRT_RELEASE=MT
-	-DLLVM_USE_CRT_DEBUG=MTd
-	-DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
+  -DCLANG_PATH_TO_LLVM_SOURCE=${BUILD_DIR}/ll/src/ll
+  -DCLANG_PATH_TO_LLVM_BUILD=${LIBDIR}/llvm
+  -DLLVM_USE_CRT_RELEASE=MT
+  -DLLVM_USE_CRT_DEBUG=MTd
+  -DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
 )
 
 if(WIN32)
-	set(CLANG_GENERATOR "Ninja")
+  set(CLANG_GENERATOR "Ninja")
 else()
-	set(CLANG_GENERATOR "Unix Makefiles")
+  set(CLANG_GENERATOR "Unix Makefiles")
 endif()
 
 
 ExternalProject_Add(external_clang
-	URL ${CLANG_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${CLANG_HASH}
-	PREFIX ${BUILD_DIR}/clang
-	CMAKE_GENERATOR ${CLANG_GENERATOR}
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clang ${DEFAULT_CMAKE_FLAGS} ${CLANG_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/clang
+  URL ${CLANG_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${CLANG_HASH}
+  PREFIX ${BUILD_DIR}/clang
+  CMAKE_GENERATOR ${CLANG_GENERATOR}
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clang ${DEFAULT_CMAKE_FLAGS} ${CLANG_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/clang
 )
 
 if(MSVC)
-	if(BUILD_MODE STREQUAL Release)
-		set(CLANG_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/ ${HARVEST_TARGET}/llvm/)
-	else()
-		set(CLANG_HARVEST_COMMAND
-			${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
-			${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/bin/ ${HARVEST_TARGET}/llvm/debug/bin/ &&
-			${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/include/ ${HARVEST_TARGET}/llvm/debug/include/
-		)
-	endif()
-	ExternalProject_Add_Step(external_clang after_install
-		COMMAND ${CLANG_HARVEST_COMMAND}
-		DEPENDEES mkdir update patch download configure build install
-	)
+  if(BUILD_MODE STREQUAL Release)
+    set(CLANG_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/ ${HARVEST_TARGET}/llvm/)
+  else()
+    set(CLANG_HARVEST_COMMAND
+      ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
+      ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/bin/ ${HARVEST_TARGET}/llvm/debug/bin/ &&
+      ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/clang/include/ ${HARVEST_TARGET}/llvm/debug/include/
+    )
+  endif()
+  ExternalProject_Add_Step(external_clang after_install
+    COMMAND ${CLANG_HARVEST_COMMAND}
+    DEPENDEES mkdir update patch download configure build install
+  )
 endif()
 
 add_dependencies(
-	external_clang
-	ll
+  external_clang
+  ll
 )
diff --git a/build_files/build_environment/cmake/clew.cmake b/build_files/build_environment/cmake/clew.cmake
index 0dcc1f24db78271d3f63ac25b42033589d0f9564..ecc0f5ae4b6a4c9282570f3fb2e78fee9aa58d50 100644
--- a/build_files/build_environment/cmake/clew.cmake
+++ b/build_files/build_environment/cmake/clew.cmake
@@ -19,10 +19,10 @@
 set(CLEW_EXTRA_ARGS)
 
 ExternalProject_Add(external_clew
-	URL ${CLEW_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${CLEW_HASH}
-	PREFIX ${BUILD_DIR}/clew
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CLEW_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/clew
+  URL ${CLEW_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${CLEW_HASH}
+  PREFIX ${BUILD_DIR}/clew
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CLEW_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/clew
 )
diff --git a/build_files/build_environment/cmake/cuew.cmake b/build_files/build_environment/cmake/cuew.cmake
index 99b7bb5c06d62deae4dee7dbb050ee52610ac744..bd0843b8940847fc016e1d46ab6fd743fbd88e2b 100644
--- a/build_files/build_environment/cmake/cuew.cmake
+++ b/build_files/build_environment/cmake/cuew.cmake
@@ -19,11 +19,11 @@
 set(CUEW_EXTRA_ARGS)
 
 ExternalProject_Add(external_cuew
-	URL ${CUEW_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${CUEW_HASH}
-	PREFIX ${BUILD_DIR}/cuew
-	PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/cuew/src/external_cuew < ${PATCH_DIR}/cuew.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/cuew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CUEW_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/cuew
+  URL ${CUEW_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${CUEW_HASH}
+  PREFIX ${BUILD_DIR}/cuew
+  PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/cuew/src/external_cuew < ${PATCH_DIR}/cuew.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/cuew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CUEW_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/cuew
 )
diff --git a/build_files/build_environment/cmake/embree.cmake b/build_files/build_environment/cmake/embree.cmake
index 8c523e25f0cb31842c7b1b7ce9c1bf8619ff506a..2dd42614cc08a6abb2623f8593622243d8812880 100644
--- a/build_files/build_environment/cmake/embree.cmake
+++ b/build_files/build_environment/cmake/embree.cmake
@@ -20,50 +20,50 @@
 # library itself does not depend on them, so should give no problems.
 
 set(EMBREE_EXTRA_ARGS
-	-DEMBREE_ISPC_SUPPORT=OFF
-	-DEMBREE_TUTORIALS=OFF
-	-DEMBREE_STATIC_LIB=ON
-	-DEMBREE_RAY_MASK=ON
-	-DEMBREE_FILTER_FUNCTION=ON
-	-DEMBREE_BACKFACE_CULLING=OFF
-	-DEMBREE_TASKING_SYSTEM=INTERNAL
-	-DEMBREE_MAX_ISA=AVX2
+  -DEMBREE_ISPC_SUPPORT=OFF
+  -DEMBREE_TUTORIALS=OFF
+  -DEMBREE_STATIC_LIB=ON
+  -DEMBREE_RAY_MASK=ON
+  -DEMBREE_FILTER_FUNCTION=ON
+  -DEMBREE_BACKFACE_CULLING=OFF
+  -DEMBREE_TASKING_SYSTEM=INTERNAL
+  -DEMBREE_MAX_ISA=AVX2
 )
 
 if(WIN32)
-	set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
+  set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
 else()
-	set(EMBREE_BUILD_DIR)
+  set(EMBREE_BUILD_DIR)
 endif()
 
 ExternalProject_Add(external_embree
-	URL ${EMBREE_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${EMBREE_HASH}
-	PREFIX ${BUILD_DIR}/embree
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/embree
+  URL ${EMBREE_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${EMBREE_HASH}
+  PREFIX ${BUILD_DIR}/embree
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/embree
 )
 if(WIN32)
 
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_embree after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/embree ${HARVEST_TARGET}/embree
-			DEPENDEES install
-		)
-	else()
-	ExternalProject_Add_Step(external_embree after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree3.lib ${HARVEST_TARGET}/embree/lib/embree3_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx.lib ${HARVEST_TARGET}/embree/lib/embree_avx_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx2.lib ${HARVEST_TARGET}/embree/lib/embree_avx2_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_sse42.lib ${HARVEST_TARGET}/embree/lib/embree_sse42_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/lexers.lib ${HARVEST_TARGET}/embree/lib/lexers_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/math.lib ${HARVEST_TARGET}/embree/lib/math_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/simd.lib ${HARVEST_TARGET}/embree/lib/simd_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/sys.lib ${HARVEST_TARGET}/embree/lib/sys_d.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/tasking.lib ${HARVEST_TARGET}/embree/lib/tasking_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_embree after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/embree ${HARVEST_TARGET}/embree
+      DEPENDEES install
+    )
+  else()
+  ExternalProject_Add_Step(external_embree after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree3.lib ${HARVEST_TARGET}/embree/lib/embree3_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx.lib ${HARVEST_TARGET}/embree/lib/embree_avx_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_avx2.lib ${HARVEST_TARGET}/embree/lib/embree_avx2_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/embree_sse42.lib ${HARVEST_TARGET}/embree/lib/embree_sse42_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/lexers.lib ${HARVEST_TARGET}/embree/lib/lexers_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/math.lib ${HARVEST_TARGET}/embree/lib/math_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/simd.lib ${HARVEST_TARGET}/embree/lib/simd_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/sys.lib ${HARVEST_TARGET}/embree/lib/sys_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/embree/lib/tasking.lib ${HARVEST_TARGET}/embree/lib/tasking_d.lib
+      DEPENDEES install
+    )
+  endif()
 
 endif()
diff --git a/build_files/build_environment/cmake/faad.cmake b/build_files/build_environment/cmake/faad.cmake
index df940c423a350ee8cc15075cfd45f68cbd271a2d..0746fbdab71d1cf6273bada9c0bb1cbece774ad9 100644
--- a/build_files/build_environment/cmake/faad.cmake
+++ b/build_files/build_environment/cmake/faad.cmake
@@ -19,22 +19,22 @@
 set(FAAD_EXTRA_ARGS)
 
 if (WIN32)
-	set(FAAD_EXTRA_CONFIGURE "utils\\win32\\ac2ver.exe" "faad2" "configure.ac" > libfaad\\win32_ver.h)
+  set(FAAD_EXTRA_CONFIGURE "utils\\win32\\ac2ver.exe" "faad2" "configure.ac" > libfaad\\win32_ver.h)
 else()
-	set(FAAD_EXTRA_CONFIGURE echo .)
+  set(FAAD_EXTRA_CONFIGURE echo .)
 endif()
 
 ExternalProject_Add(external_faad
-	URL ${FAAD_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${FAAD_HASH}
-	PREFIX ${BUILD_DIR}/faad
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && ${FAAD_EXTRA_CONFIGURE} && ${CONFIGURE_COMMAND} --disable-shared --enable-static --prefix=${LIBDIR}/faad
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make install
-	INSTALL_DIR ${LIBDIR}/faad
+  URL ${FAAD_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${FAAD_HASH}
+  PREFIX ${BUILD_DIR}/faad
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && ${FAAD_EXTRA_CONFIGURE} && ${CONFIGURE_COMMAND} --disable-shared --enable-static --prefix=${LIBDIR}/faad
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/faad/src/external_faad/ && make install
+  INSTALL_DIR ${LIBDIR}/faad
 )
 
 if(MSVC)
-	set_target_properties(external_faad PROPERTIES FOLDER Mingw)
+  set_target_properties(external_faad PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/ffi.cmake b/build_files/build_environment/cmake/ffi.cmake
index bc0932022cb85d3f9784f4011df70c9e1efa5940..aec9f5bc3b3356ef65f77f144f164049669f5566 100644
--- a/build_files/build_environment/cmake/ffi.cmake
+++ b/build_files/build_environment/cmake/ffi.cmake
@@ -17,24 +17,24 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_ffi
-	URL ${FFI_URI}
-	URL_HASH SHA256=${FFI_HASH}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	PREFIX ${BUILD_DIR}/ffi
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ffi
-		--enable-shared=no
-		--enable-static=yes
-		--with-pic
-		--libdir=${LIBDIR}/ffi/lib/
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make install
-	PATCH_COMMAND ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/ffi/src/external_ffi < ${PATCH_DIR}/ffi.diff
-	INSTALL_DIR ${LIBDIR}/ffi
+  URL ${FFI_URI}
+  URL_HASH SHA256=${FFI_HASH}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  PREFIX ${BUILD_DIR}/ffi
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ffi
+    --enable-shared=no
+    --enable-static=yes
+    --with-pic
+    --libdir=${LIBDIR}/ffi/lib/
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ffi/src/external_ffi/ && make install
+  PATCH_COMMAND ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/ffi/src/external_ffi < ${PATCH_DIR}/ffi.diff
+  INSTALL_DIR ${LIBDIR}/ffi
 )
 
 if (UNIX AND NOT APPLE)
-	ExternalProject_Add_Step(external_ffi after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/ffi/lib/libffi.a ${LIBDIR}/ffi/lib/libffi_pic.a
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_ffi after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/ffi/lib/libffi.a ${LIBDIR}/ffi/lib/libffi_pic.a
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/ffmpeg.cmake b/build_files/build_environment/cmake/ffmpeg.cmake
index 2a8e3fd5d3353e0154d1b12822aa44a12f6781c2..27d817e8948c12de0245c55af174b4dd12950efd 100644
--- a/build_files/build_environment/cmake/ffmpeg.cmake
+++ b/build_files/build_environment/cmake/ffmpeg.cmake
@@ -22,131 +22,131 @@ set(FFMPEG_EXTRA_FLAGS --pkg-config-flags=--static --extra-cflags=${FFMPEG_CFLAG
 set(FFMPEG_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/openjpeg/lib/pkgconfig:${mingw_LIBDIR}/x264/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR})
 
 if(WIN32)
-	set(FFMPEG_ENV set ${FFMPEG_ENV} &&)
-	set(FFMPEG_EXTRA_FLAGS
-		${FFMPEG_EXTRA_FLAGS}
-		--disable-static
-		--enable-shared
-		--enable-w32threads
-		--disable-pthreads
-		--enable-libopenjpeg
-	)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
-		set(FFMPEG_EXTRA_FLAGS
-			${FFMPEG_EXTRA_FLAGS}
-			--x86asmexe=yasm
-		)
-	endif()
+  set(FFMPEG_ENV set ${FFMPEG_ENV} &&)
+  set(FFMPEG_EXTRA_FLAGS
+    ${FFMPEG_EXTRA_FLAGS}
+    --disable-static
+    --enable-shared
+    --enable-w32threads
+    --disable-pthreads
+    --enable-libopenjpeg
+  )
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+    set(FFMPEG_EXTRA_FLAGS
+      ${FFMPEG_EXTRA_FLAGS}
+      --x86asmexe=yasm
+    )
+  endif()
 else()
-	set(FFMPEG_EXTRA_FLAGS
-		${FFMPEG_EXTRA_FLAGS}
-		--enable-static
-		--disable-shared
-		--enable-libopenjpeg
-	)
+  set(FFMPEG_EXTRA_FLAGS
+    ${FFMPEG_EXTRA_FLAGS}
+    --enable-static
+    --disable-shared
+    --enable-libopenjpeg
+  )
 endif()
 
 if(APPLE)
-	set(FFMPEG_EXTRA_FLAGS
-		${FFMPEG_EXTRA_FLAGS}
-		--target-os=darwin
-		)
+  set(FFMPEG_EXTRA_FLAGS
+    ${FFMPEG_EXTRA_FLAGS}
+    --target-os=darwin
+    )
 endif()
 
 ExternalProject_Add(external_ffmpeg
-	URL ${FFMPEG_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${FFMPEG_HASH}
-	# OpenJpeg is compiled with pthread support on Linux, which is all fine and is what we
-	# want for maximum runtime performance, but due to static nature of that library we
-	# need to force ffmpeg to link against pthread, otherwise test program used by autoconf
-	# will fail. This patch does that in a way that is compatible with multiple distributions.
-	PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/ffmpeg/src/external_ffmpeg < ${PATCH_DIR}/ffmpeg.diff
-	PREFIX ${BUILD_DIR}/ffmpeg
-	CONFIGURE_COMMAND ${CONFIGURE_ENV_NO_PERL} &&
-		cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ &&
-		${FFMPEG_ENV} ${CONFIGURE_COMMAND_NO_TARGET} ${FFMPEG_EXTRA_FLAGS}
-		--disable-lzma
-		--disable-avfilter
-		--disable-vdpau
-		--disable-bzlib
-		--disable-libgsm
-		--disable-libspeex
-		--enable-libvpx
-		--prefix=${LIBDIR}/ffmpeg
-		--enable-libtheora
-		--enable-libvorbis
-		--enable-zlib
-		--enable-stripping
-		--enable-runtime-cpudetect
-		--disable-vaapi
-		--disable-nonfree
-		--enable-gpl
-		--disable-postproc
-		--enable-libmp3lame
-		--disable-librtmp
-		--enable-libx264
-		--enable-libxvid
-		--disable-libopencore-amrnb
-		--disable-libopencore-amrwb
-		--disable-libdc1394
-		--disable-version3
-		--disable-debug
-		--enable-optimizations
-		--disable-sse
-		--disable-ssse3
-		--enable-ffplay
-		--disable-openssl
-		--disable-securetransport
-		--disable-indev=avfoundation
-		--disable-indev=qtkit
-		--disable-sdl2
-		--disable-gnutls
-		--disable-videotoolbox
-		--disable-libxcb
-		--disable-xlib
-		--disable-audiotoolbox
-		--disable-cuvid
-		--disable-nvenc
-		--disable-indev=jack
-		--disable-indev=alsa
-		--disable-outdev=alsa
-		--disable-crystalhd
-		--disable-sndio
-	BUILD_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make install
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ffmpeg ${DEFAULT_CMAKE_FLAGS}
-	INSTALL_DIR ${LIBDIR}/ffmpeg
+  URL ${FFMPEG_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${FFMPEG_HASH}
+  # OpenJpeg is compiled with pthread support on Linux, which is all fine and is what we
+  # want for maximum runtime performance, but due to static nature of that library we
+  # need to force ffmpeg to link against pthread, otherwise test program used by autoconf
+  # will fail. This patch does that in a way that is compatible with multiple distributions.
+  PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/ffmpeg/src/external_ffmpeg < ${PATCH_DIR}/ffmpeg.diff
+  PREFIX ${BUILD_DIR}/ffmpeg
+  CONFIGURE_COMMAND ${CONFIGURE_ENV_NO_PERL} &&
+    cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ &&
+    ${FFMPEG_ENV} ${CONFIGURE_COMMAND_NO_TARGET} ${FFMPEG_EXTRA_FLAGS}
+    --disable-lzma
+    --disable-avfilter
+    --disable-vdpau
+    --disable-bzlib
+    --disable-libgsm
+    --disable-libspeex
+    --enable-libvpx
+    --prefix=${LIBDIR}/ffmpeg
+    --enable-libtheora
+    --enable-libvorbis
+    --enable-zlib
+    --enable-stripping
+    --enable-runtime-cpudetect
+    --disable-vaapi
+    --disable-nonfree
+    --enable-gpl
+    --disable-postproc
+    --enable-libmp3lame
+    --disable-librtmp
+    --enable-libx264
+    --enable-libxvid
+    --disable-libopencore-amrnb
+    --disable-libopencore-amrwb
+    --disable-libdc1394
+    --disable-version3
+    --disable-debug
+    --enable-optimizations
+    --disable-sse
+    --disable-ssse3
+    --enable-ffplay
+    --disable-openssl
+    --disable-securetransport
+    --disable-indev=avfoundation
+    --disable-indev=qtkit
+    --disable-sdl2
+    --disable-gnutls
+    --disable-videotoolbox
+    --disable-libxcb
+    --disable-xlib
+    --disable-audiotoolbox
+    --disable-cuvid
+    --disable-nvenc
+    --disable-indev=jack
+    --disable-indev=alsa
+    --disable-outdev=alsa
+    --disable-crystalhd
+    --disable-sndio
+  BUILD_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV_NO_PERL} && cd ${BUILD_DIR}/ffmpeg/src/external_ffmpeg/ && make install
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ffmpeg ${DEFAULT_CMAKE_FLAGS}
+  INSTALL_DIR ${LIBDIR}/ffmpeg
 )
 
 if(MSVC)
-	set_target_properties(external_ffmpeg PROPERTIES FOLDER Mingw)
+  set_target_properties(external_ffmpeg PROPERTIES FOLDER Mingw)
 endif()
 
 add_dependencies(
-	external_ffmpeg
-	external_zlib
-	external_faad
-	external_openjpeg
-	external_xvidcore
-	external_x264
-	external_vpx
-	external_theora
-	external_vorbis
-	external_ogg
-	external_lame
+  external_ffmpeg
+  external_zlib
+  external_faad
+  external_openjpeg
+  external_xvidcore
+  external_x264
+  external_vpx
+  external_theora
+  external_vorbis
+  external_ogg
+  external_lame
 )
 if(WIN32)
-	add_dependencies(
-		external_ffmpeg
-		external_zlib_mingw
-	)
+  add_dependencies(
+    external_ffmpeg
+    external_zlib_mingw
+  )
 endif()
 
 if(BUILD_MODE STREQUAL Release AND WIN32)
-	ExternalProject_Add_Step(external_ffmpeg after_install
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/include ${HARVEST_TARGET}/ffmpeg/include
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/bin ${HARVEST_TARGET}/ffmpeg/lib
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_ffmpeg after_install
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/include ${HARVEST_TARGET}/ffmpeg/include
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ffmpeg/bin ${HARVEST_TARGET}/ffmpeg/lib
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/fftw.cmake b/build_files/build_environment/cmake/fftw.cmake
index d85d7bc753883c54715e713d37f83611425526ef..2d10cf6ad2810c71a4815f89deb5e0c6c1913d70 100644
--- a/build_files/build_environment/cmake/fftw.cmake
+++ b/build_files/build_environment/cmake/fftw.cmake
@@ -19,29 +19,29 @@
 set(FFTW_EXTRA_ARGS)
 
 if(WIN32)
-	set(FFTW3_ENV set CFLAGS=-fno-stack-check -fno-stack-protector -mno-stack-arg-probe -fno-lto &&)
-	set(FFTW3_PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/fftw3/src/external_fftw3 < ${PATCH_DIR}/fftw3.diff)
+  set(FFTW3_ENV set CFLAGS=-fno-stack-check -fno-stack-protector -mno-stack-arg-probe -fno-lto &&)
+  set(FFTW3_PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/fftw3/src/external_fftw3 < ${PATCH_DIR}/fftw3.diff)
 endif()
 
 ExternalProject_Add(external_fftw3
-	URL ${FFTW_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${FFTW_HASH}
-	PREFIX ${BUILD_DIR}/fftw3
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && ${FFTW3_ENV} cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/fftw3
-	PATCH_COMMAND ${FFTW3_PATCH_COMMAND}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make	-j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make install
-	INSTALL_DIR ${LIBDIR}/fftw3
+  URL ${FFTW_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${FFTW_HASH}
+  PREFIX ${BUILD_DIR}/fftw3
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && ${FFTW3_ENV} cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/fftw3
+  PATCH_COMMAND ${FFTW3_PATCH_COMMAND}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/fftw3/src/external_fftw3/ && make install
+  INSTALL_DIR ${LIBDIR}/fftw3
 )
 
 if(MSVC)
-	set_target_properties(external_fftw3 PROPERTIES FOLDER Mingw)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_fftw3 after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/lib/libfftw3.a ${HARVEST_TARGET}/fftw3/lib/libfftw.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/include/fftw3.h ${HARVEST_TARGET}/fftw3/include/fftw3.h
-			DEPENDEES install
-		)
-	endif()
+  set_target_properties(external_fftw3 PROPERTIES FOLDER Mingw)
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_fftw3 after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/lib/libfftw3.a ${HARVEST_TARGET}/fftw3/lib/libfftw.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/fftw3/include/fftw3.h ${HARVEST_TARGET}/fftw3/include/fftw3.h
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/flac.cmake b/build_files/build_environment/cmake/flac.cmake
index f5ef5809b409b5f0e786dbfa9316baec1c9923c3..2cc9a02fe3bae4e164c5cf4be595740044af5164 100644
--- a/build_files/build_environment/cmake/flac.cmake
+++ b/build_files/build_environment/cmake/flac.cmake
@@ -17,16 +17,16 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_flac
-	URL ${FLAC_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${FLAC_HASH}
-	PREFIX ${BUILD_DIR}/flac
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flac --disable-shared --enable-static
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make install
-	INSTALL_DIR ${LIBDIR}/flac
+  URL ${FLAC_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${FLAC_HASH}
+  PREFIX ${BUILD_DIR}/flac
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flac --disable-shared --enable-static
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flac/src/external_flac/ && make install
+  INSTALL_DIR ${LIBDIR}/flac
 )
 
 if(MSVC)
-	set_target_properties(external_flac PROPERTIES FOLDER Mingw)
+  set_target_properties(external_flac PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/flexbison.cmake b/build_files/build_environment/cmake/flexbison.cmake
index f2908e1ce2cda28923ce0736a874576e5a1eb9a2..d4363eb07e1b17d7a1395b701d423f186a9a4f14 100644
--- a/build_files/build_environment/cmake/flexbison.cmake
+++ b/build_files/build_environment/cmake/flexbison.cmake
@@ -19,13 +19,13 @@
 set(FLEXBISON_EXTRA_ARGS)
 
 ExternalProject_Add(external_flexbison
-	URL ${FLEXBISON_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${FLEXBISON_HASH}
-	PREFIX ${BUILD_DIR}/flexbison
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/flexbison ${DEFAULT_CMAKE_FLAGS} ${FLEXBISON_EXTRA_ARGS}
-	CONFIGURE_COMMAND echo .
-	BUILD_COMMAND echo .
-	INSTALL_COMMAND COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/flexbison/src/external_flexbison/ ${LIBDIR}/flexbison/
-	INSTALL_DIR ${LIBDIR}/flexbison
+  URL ${FLEXBISON_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${FLEXBISON_HASH}
+  PREFIX ${BUILD_DIR}/flexbison
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/flexbison ${DEFAULT_CMAKE_FLAGS} ${FLEXBISON_EXTRA_ARGS}
+  CONFIGURE_COMMAND echo .
+  BUILD_COMMAND echo .
+  INSTALL_COMMAND COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/flexbison/src/external_flexbison/ ${LIBDIR}/flexbison/
+  INSTALL_DIR ${LIBDIR}/flexbison
 )
diff --git a/build_files/build_environment/cmake/freeglut.cmake b/build_files/build_environment/cmake/freeglut.cmake
index 043b382e8fd1eb5a90e65cb69959922d172db6f8..39b09f926300d649af9a9fc1479aa482d50fce1d 100644
--- a/build_files/build_environment/cmake/freeglut.cmake
+++ b/build_files/build_environment/cmake/freeglut.cmake
@@ -17,19 +17,19 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		set(FREEGLUT_EXTRA_ARGS
-			-DFREEGLUT_BUILD_SHARED_LIBS=Off
-			-DFREEGLUT_BUILD_STATIC_LIBS=On
-		)
+  if(BUILD_MODE STREQUAL Release)
+    set(FREEGLUT_EXTRA_ARGS
+      -DFREEGLUT_BUILD_SHARED_LIBS=Off
+      -DFREEGLUT_BUILD_STATIC_LIBS=On
+    )
 
-		ExternalProject_Add(external_freeglut
-			URL ${FREEGLUT_URI}
-			DOWNLOAD_DIR ${DOWNLOAD_DIR}
-			URL_HASH MD5=${FREEGLUT_HASH}
-			PREFIX ${BUILD_DIR}/freeglut
-			CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freeglut ${DEFAULT_C_FLAGS} ${DEFAULT_CXX_FLAGS} ${FREEGLUT_EXTRA_ARGS}
-			INSTALL_DIR ${LIBDIR}/freeglut
-		)
-	endif()
+    ExternalProject_Add(external_freeglut
+      URL ${FREEGLUT_URI}
+      DOWNLOAD_DIR ${DOWNLOAD_DIR}
+      URL_HASH MD5=${FREEGLUT_HASH}
+      PREFIX ${BUILD_DIR}/freeglut
+      CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freeglut ${DEFAULT_C_FLAGS} ${DEFAULT_CXX_FLAGS} ${FREEGLUT_EXTRA_ARGS}
+      INSTALL_DIR ${LIBDIR}/freeglut
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/freetype.cmake b/build_files/build_environment/cmake/freetype.cmake
index 1034e9f2029604dfc0253fe5044b113312b34873..f998c94706f7c0904f78d5d84fd0c4fe8c34ddcb 100644
--- a/build_files/build_environment/cmake/freetype.cmake
+++ b/build_files/build_environment/cmake/freetype.cmake
@@ -17,28 +17,28 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(FREETYPE_EXTRA_ARGS
-	-DCMAKE_RELEASE_POSTFIX:STRING=2ST
-	-DCMAKE_DEBUG_POSTFIX:STRING=2ST_d
-	-DWITH_BZip2=OFF
-	-DWITH_HarfBuzz=OFF
-	-DFT_WITH_HARFBUZZ=OFF
-	-DFT_WITH_BZIP2=OFF
-	-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
-	-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE)
+  -DCMAKE_RELEASE_POSTFIX:STRING=2ST
+  -DCMAKE_DEBUG_POSTFIX:STRING=2ST_d
+  -DWITH_BZip2=OFF
+  -DWITH_HarfBuzz=OFF
+  -DFT_WITH_HARFBUZZ=OFF
+  -DFT_WITH_BZIP2=OFF
+  -DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
+  -DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE)
 
 ExternalProject_Add(external_freetype
-	URL ${FREETYPE_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${FREETYPE_HASH}
-	PREFIX ${BUILD_DIR}/freetype
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freetype ${DEFAULT_CMAKE_FLAGS} ${FREETYPE_EXTRA_ARGS}
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/freetype/src/external_freetype < ${PATCH_DIR}/freetype.diff
-	INSTALL_DIR ${LIBDIR}/freetype
+  URL ${FREETYPE_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${FREETYPE_HASH}
+  PREFIX ${BUILD_DIR}/freetype
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/freetype ${DEFAULT_CMAKE_FLAGS} ${FREETYPE_EXTRA_ARGS}
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/freetype/src/external_freetype < ${PATCH_DIR}/freetype.diff
+  INSTALL_DIR ${LIBDIR}/freetype
 )
 
 if(BUILD_MODE STREQUAL Release AND WIN32)
-	ExternalProject_Add_Step(external_freetype after_install
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freetype ${HARVEST_TARGET}/freetype
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_freetype after_install
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freetype ${HARVEST_TARGET}/freetype
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/glew.cmake b/build_files/build_environment/cmake/glew.cmake
index b5d9e4d3310ff1690ff884790e07a35fa08ddc44..2f8b88e8ddf67f7de6ff1949c79aa56fcd0374ff 100644
--- a/build_files/build_environment/cmake/glew.cmake
+++ b/build_files/build_environment/cmake/glew.cmake
@@ -17,16 +17,16 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(GLEW_EXTRA_ARGS
-	-DBUILD_UTILS=Off
-	-DBUILD_SHARED_LIBS=Off
+  -DBUILD_UTILS=Off
+  -DBUILD_SHARED_LIBS=Off
 )
 
 ExternalProject_Add(external_glew
-	URL ${GLEW_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${GLEW_HASH}
-	PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_glew.txt	${BUILD_DIR}/glew/src/external_glew/CMakeLists.txt
-	PREFIX ${BUILD_DIR}/glew
-	CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glew ${DEFAULT_CMAKE_FLAGS} ${GLEW_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/glew
+  URL ${GLEW_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${GLEW_HASH}
+  PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_glew.txt ${BUILD_DIR}/glew/src/external_glew/CMakeLists.txt
+  PREFIX ${BUILD_DIR}/glew
+  CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glew ${DEFAULT_CMAKE_FLAGS} ${GLEW_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/glew
 )
diff --git a/build_files/build_environment/cmake/glfw.cmake b/build_files/build_environment/cmake/glfw.cmake
index ae80080525ca628da05281c7bbbedb88858721df..3a61c195ad6a9244aaf42d696065b412d03e0657 100644
--- a/build_files/build_environment/cmake/glfw.cmake
+++ b/build_files/build_environment/cmake/glfw.cmake
@@ -19,10 +19,10 @@
 set(GLFW_EXTRA_ARGS)
 
 ExternalProject_Add(external_glfw
-	URL ${GLFW_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${GLFW_HASH}
-	PREFIX ${BUILD_DIR}/glfw
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glfw -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${GLFW_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/glfw
+  URL ${GLFW_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${GLFW_HASH}
+  PREFIX ${BUILD_DIR}/glfw
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glfw -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${GLFW_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/glfw
 )
diff --git a/build_files/build_environment/cmake/harvest.cmake b/build_files/build_environment/cmake/harvest.cmake
index 0e98780e3f0385a729d87801fa607ebcf808958b..27bcd184c447c196300ebbc437e5b212d937cd26 100644
--- a/build_files/build_environment/cmake/harvest.cmake
+++ b/build_files/build_environment/cmake/harvest.cmake
@@ -21,90 +21,90 @@
 ########################################################################
 
 if(NOT DEFINED HARVEST_TARGET)
-	set(HARVEST_TARGET ${CMAKE_CURRENT_SOURCE_DIR}/Harvest)
+  set(HARVEST_TARGET ${CMAKE_CURRENT_SOURCE_DIR}/Harvest)
 endif()
 message("HARVEST_TARGET = ${HARVEST_TARGET}")
 
 if(WIN32)
 if(BUILD_MODE STREQUAL Release)
-	add_custom_target(Harvest_Release_Results
-		COMMAND # jpeg rename libfile + copy include
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
-				# OpenImageIO
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/include ${HARVEST_TARGET}/OpenImageIO/include &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/lib ${HARVEST_TARGET}/OpenImageIO/lib &&
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/OpenImageIO/bin/idiff.exe ${HARVEST_TARGET}/OpenImageIO/bin/idiff.exe &&
-				# png
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
-				# freeglut-> opengl
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/freeglut/lib/freeglut_static.lib ${HARVEST_TARGET}/opengl/lib/freeglut_static.lib &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freeglut/include/ ${HARVEST_TARGET}/opengl/include/ &&
-				# glew-> opengl
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/glew/lib/libglew32.lib ${HARVEST_TARGET}/opengl/lib/glew.lib &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/glew/include/ ${HARVEST_TARGET}/opengl/include/ &&
-				# sndfile
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/lib/libsndfile.dll.a ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.lib &&
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/bin/libsndfile-1.dll ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.dll &&
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/include/sndfile.h ${HARVEST_TARGET}/sndfile/include/sndfile.h &&
-				# tiff
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiff.lib ${HARVEST_TARGET}/tiff/lib/libtiff.lib &&
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tiff/include/ ${HARVEST_TARGET}/tiff/include/ &&
-				# BlendThumb
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb64/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb64.dll &&
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb32/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb.dll &&
-				# hidapi
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
-				# webp, straight up copy
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
-		DEPENDS
-	)
+  add_custom_target(Harvest_Release_Results
+    COMMAND # jpeg rename libfile + copy include
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
+        # OpenImageIO
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/include ${HARVEST_TARGET}/OpenImageIO/include &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/OpenImageIO/lib ${HARVEST_TARGET}/OpenImageIO/lib &&
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/OpenImageIO/bin/idiff.exe ${HARVEST_TARGET}/OpenImageIO/bin/idiff.exe &&
+        # png
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
+        # freeglut-> opengl
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/freeglut/lib/freeglut_static.lib ${HARVEST_TARGET}/opengl/lib/freeglut_static.lib &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/freeglut/include/ ${HARVEST_TARGET}/opengl/include/ &&
+        # glew-> opengl
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/glew/lib/libglew32.lib ${HARVEST_TARGET}/opengl/lib/glew.lib &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/glew/include/ ${HARVEST_TARGET}/opengl/include/ &&
+        # sndfile
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/lib/libsndfile.dll.a ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.lib &&
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/bin/libsndfile-1.dll ${HARVEST_TARGET}/sndfile/lib/libsndfile-1.dll &&
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/sndfile/include/sndfile.h ${HARVEST_TARGET}/sndfile/include/sndfile.h &&
+        # tiff
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiff.lib ${HARVEST_TARGET}/tiff/lib/libtiff.lib &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tiff/include/ ${HARVEST_TARGET}/tiff/include/ &&
+        # BlendThumb
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb64/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb64.dll &&
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/BlendThumb32/bin/blendthumb.dll ${HARVEST_TARGET}/ThumbHandler/lib/BlendThumb.dll &&
+        # hidapi
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
+        # webp, straight up copy
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
+    DEPENDS
+  )
 endif()
 
 if(BUILD_MODE STREQUAL Debug)
-	add_custom_target(Harvest_Debug_Results
-				# OpenImageIO
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib &&
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib &&
-				# python
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/ &&
-				# hdf5
-				${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hdf5/lib ${HARVEST_TARGET}/hdf5/lib &&
-				# numpy
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz &&
-				# python
-				${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz
-		DEPENDS Package_Python
-	)
+  add_custom_target(Harvest_Debug_Results
+        # OpenImageIO
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib &&
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib &&
+        # python
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/ &&
+        # hdf5
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hdf5/lib ${HARVEST_TARGET}/hdf5/lib &&
+        # numpy
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}d.tar.gz &&
+        # python
+        ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_d.tar.gz
+    DEPENDS Package_Python
+  )
 endif()
 
 else(WIN32)
 
 function(harvest from to)
-	set(pattern "")
-	foreach(f ${ARGN})
-		set(pattern ${f})
-	endforeach()
+  set(pattern "")
+  foreach(f ${ARGN})
+    set(pattern ${f})
+  endforeach()
 
-	if(pattern STREQUAL "")
-		get_filename_component(dirpath ${to} DIRECTORY)
-		get_filename_component(filename ${to} NAME)
-		install(
-			FILES ${LIBDIR}/${from}
-			DESTINATION ${HARVEST_TARGET}/${dirpath}
-			RENAME ${filename})
-	else()
-		install(
-			DIRECTORY ${LIBDIR}/${from}/
-			DESTINATION ${HARVEST_TARGET}/${to}
-			USE_SOURCE_PERMISSIONS
-			FILES_MATCHING PATTERN ${pattern}
-			PATTERN "pkgconfig" EXCLUDE
-			PATTERN "cmake" EXCLUDE
-			PATTERN "__pycache__" EXCLUDE
-			PATTERN "tests" EXCLUDE)
-	endif()
+  if(pattern STREQUAL "")
+    get_filename_component(dirpath ${to} DIRECTORY)
+    get_filename_component(filename ${to} NAME)
+    install(
+      FILES ${LIBDIR}/${from}
+      DESTINATION ${HARVEST_TARGET}/${dirpath}
+      RENAME ${filename})
+  else()
+    install(
+      DIRECTORY ${LIBDIR}/${from}/
+      DESTINATION ${HARVEST_TARGET}/${to}
+      USE_SOURCE_PERMISSIONS
+      FILES_MATCHING PATTERN ${pattern}
+      PATTERN "pkgconfig" EXCLUDE
+      PATTERN "cmake" EXCLUDE
+      PATTERN "__pycache__" EXCLUDE
+      PATTERN "tests" EXCLUDE)
+  endif()
 endfunction()
 
 harvest(alembic/include alembic/include "*.h")
@@ -134,25 +134,25 @@ harvest(llvm/include llvm/include "*")
 harvest(llvm/bin llvm/bin "llvm-config")
 harvest(llvm/lib llvm/lib "libLLVM*.a")
 if(APPLE)
-	harvest(openmp/lib openmp/lib "*")
-	harvest(openmp/include openmp/include "*.h")
+  harvest(openmp/lib openmp/lib "*")
+  harvest(openmp/include openmp/include "*.h")
 endif()
 harvest(ogg/lib ffmpeg/lib "*.a")
 harvest(openal/include openal/include "*.h")
 if(UNIX AND NOT APPLE)
-	harvest(openal/lib openal/lib "*.a")
+  harvest(openal/lib openal/lib "*.a")
 
-	harvest(blosc/include blosc/include "*.h")
-	harvest(blosc/lib blosc/lib "*.a")
+  harvest(blosc/include blosc/include "*.h")
+  harvest(blosc/lib blosc/lib "*.a")
 
-	harvest(zlib/include zlib/include "*.h")
-	harvest(zlib/lib zlib/lib "*.a")
+  harvest(zlib/include zlib/include "*.h")
+  harvest(zlib/lib zlib/lib "*.a")
 
-	harvest(xml2/include xml2/include "*.h")
-	harvest(xml2/lib xml2/lib "*.a")
+  harvest(xml2/include xml2/include "*.h")
+  harvest(xml2/lib xml2/lib "*.a")
 else()
-	harvest(blosc/lib openvdb/lib "*.a")
-	harvest(xml2/lib opencollada/lib "*.a")
+  harvest(blosc/lib openvdb/lib "*.a")
+  harvest(xml2/lib opencollada/lib "*.a")
 endif()
 harvest(opencollada/include/opencollada opencollada/include "*.h")
 harvest(opencollada/lib/opencollada opencollada/lib "*.a")
diff --git a/build_files/build_environment/cmake/hdf5.cmake b/build_files/build_environment/cmake/hdf5.cmake
index 63ad14761da99d038189ef72e645d48610d3c310..e28903059f282eac29161d8444c1131a1330b533 100644
--- a/build_files/build_environment/cmake/hdf5.cmake
+++ b/build_files/build_environment/cmake/hdf5.cmake
@@ -17,26 +17,26 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(HDF5_EXTRA_ARGS
-	-DHDF5_ENABLE_THREADSAFE=Off
-	-DHDF5_BUILD_CPP_LIB=Off
-	-DBUILD_TESTING=Off
-	-DHDF5_BUILD_TOOLS=Off
-	-DHDF5_BUILD_EXAMPLES=Off
-	-DHDF5_BUILD_HL_LIB=On
-	-DBUILD_STATIC_CRT_LIBS=On
-	-DBUILD_SHARED_LIBS=On
+  -DHDF5_ENABLE_THREADSAFE=Off
+  -DHDF5_BUILD_CPP_LIB=Off
+  -DBUILD_TESTING=Off
+  -DHDF5_BUILD_TOOLS=Off
+  -DHDF5_BUILD_EXAMPLES=Off
+  -DHDF5_BUILD_HL_LIB=On
+  -DBUILD_STATIC_CRT_LIBS=On
+  -DBUILD_SHARED_LIBS=On
 )
 
 if(WIN32)
-	set(HDF5_PATCH ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/hdf5/src/external_hdf5 < ${PATCH_DIR}/hdf5.diff)
+  set(HDF5_PATCH ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/hdf5/src/external_hdf5 < ${PATCH_DIR}/hdf5.diff)
 endif()
 
 ExternalProject_Add(external_hdf5
-	URL ${HDF5_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${HDF5_HASH}
-	PREFIX ${BUILD_DIR}/hdf5
-	PATCH_COMMAND ${HDF5_PATCH}
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hdf5 ${HDF5_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/hdf5
+  URL ${HDF5_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${HDF5_HASH}
+  PREFIX ${BUILD_DIR}/hdf5
+  PATCH_COMMAND ${HDF5_PATCH}
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hdf5 ${HDF5_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/hdf5
 )
diff --git a/build_files/build_environment/cmake/hidapi.cmake b/build_files/build_environment/cmake/hidapi.cmake
index cfa4cc53d2dfa79fe9d803654339540f0fae3b35..9a3d2ebf8df851bb1b69f16c20cf549e4a4721d8 100644
--- a/build_files/build_environment/cmake/hidapi.cmake
+++ b/build_files/build_environment/cmake/hidapi.cmake
@@ -19,11 +19,11 @@
 set(HIDAPI_EXTRA_ARGS)
 
 ExternalProject_Add(external_hidapi
-	URL ${HIDAPI_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${HIDAPI_HASH}
-	PREFIX ${BUILD_DIR}/hidapi
-	PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_hidapi.txt	${BUILD_DIR}/hidapi/src/external_hidapi/cmakelists.txt && ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/hidapi/src/external_hidapi < ${PATCH_DIR}/hidapi.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hidapi -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${HIDAPI_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/hidapi
+  URL ${HIDAPI_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${HIDAPI_HASH}
+  PREFIX ${BUILD_DIR}/hidapi
+  PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_hidapi.txt   ${BUILD_DIR}/hidapi/src/external_hidapi/cmakelists.txt && ${PATCH_CMD} -p 0 -d ${BUILD_DIR}/hidapi/src/external_hidapi < ${PATCH_DIR}/hidapi.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/hidapi -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${HIDAPI_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/hidapi
 )
diff --git a/build_files/build_environment/cmake/iconv.cmake b/build_files/build_environment/cmake/iconv.cmake
index 18f8f60b4f505890c62ea0a191aff3817966d848..5be677392e631975c81f120f79fd5a64ff1b97bd 100644
--- a/build_files/build_environment/cmake/iconv.cmake
+++ b/build_files/build_environment/cmake/iconv.cmake
@@ -19,23 +19,23 @@
 set(ICONV_EXTRA_ARGS)
 
 ExternalProject_Add(external_iconv
-	URL ${ICONV_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${ICONV_HASH}
-	PREFIX ${BUILD_DIR}/iconv
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/iconv
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make install
-	INSTALL_DIR ${LIBDIR}/iconv
+  URL ${ICONV_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${ICONV_HASH}
+  PREFIX ${BUILD_DIR}/iconv
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && ${CONFIGURE_COMMAND} --enable-static --prefix=${mingw_LIBDIR}/iconv
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/iconv/src/external_iconv/ && make install
+  INSTALL_DIR ${LIBDIR}/iconv
 )
 
 if(MSVC)
-	set_target_properties(external_iconv PROPERTIES FOLDER Mingw)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_iconv after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/lib/libiconv.a ${HARVEST_TARGET}/iconv/lib/iconv.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/include/iconv.h ${HARVEST_TARGET}/iconv/include/iconv.h
-			DEPENDEES install
-		)
-	endif()
+  set_target_properties(external_iconv PROPERTIES FOLDER Mingw)
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_iconv after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/lib/libiconv.a ${HARVEST_TARGET}/iconv/lib/iconv.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/iconv/include/iconv.h ${HARVEST_TARGET}/iconv/include/iconv.h
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/ilmbase.cmake b/build_files/build_environment/cmake/ilmbase.cmake
index 22be39c3ff1afb4439c34e465eb3fe65ea273c0d..97761b4ad49d7d1e0accc4ea44fe3e1224f22f23 100644
--- a/build_files/build_environment/cmake/ilmbase.cmake
+++ b/build_files/build_environment/cmake/ilmbase.cmake
@@ -17,42 +17,42 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
-	set(ILMBASE_EXTRA_ARGS
-		-DBUILD_SHARED_LIBS=OFF
-		-DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES}
-	)
+  set(ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
+  set(ILMBASE_EXTRA_ARGS
+    -DBUILD_SHARED_LIBS=OFF
+    -DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES}
+  )
 
-	ExternalProject_Add(external_ilmbase
-		URL ${ILMBASE_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${ILMBASE_HASH}
-		PREFIX ${BUILD_DIR}/ilmbase
-		CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS}
-		INSTALL_DIR ${LIBDIR}/openexr
-	)
+  ExternalProject_Add(external_ilmbase
+    URL ${ILMBASE_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${ILMBASE_HASH}
+    PREFIX ${BUILD_DIR}/ilmbase
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS}
+    INSTALL_DIR ${LIBDIR}/openexr
+  )
 
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_ilmbase after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_ilmbase after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr
+      DEPENDEES install
+    )
+  endif()
 
 else()
-	set(ILMBASE_EXTRA_ARGS
-		--enable-static
-		--disable-shared
-		--enable-cxxstd=11
-	)
-	ExternalProject_Add(external_ilmbase
-		URL ${ILMBASE_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${ILMBASE_HASH}
-		PREFIX ${BUILD_DIR}/ilmbase
-		CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ilmbase ${ILMBASE_EXTRA_ARGS}
-		BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make -j${MAKE_THREADS}
-		INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install
-		INSTALL_DIR ${LIBDIR}/openexr
-	)
+  set(ILMBASE_EXTRA_ARGS
+    --enable-static
+    --disable-shared
+    --enable-cxxstd=11
+  )
+  ExternalProject_Add(external_ilmbase
+    URL ${ILMBASE_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${ILMBASE_HASH}
+    PREFIX ${BUILD_DIR}/ilmbase
+    CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ilmbase ${ILMBASE_EXTRA_ARGS}
+    BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make -j${MAKE_THREADS}
+    INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install
+    INSTALL_DIR ${LIBDIR}/openexr
+  )
 endif()
diff --git a/build_files/build_environment/cmake/jemalloc.cmake b/build_files/build_environment/cmake/jemalloc.cmake
index c39ba448917503307509b04fe5c70601e57a1ac5..30f584ac2ee6ed09aa0572a8443c1c06ab43ee6c 100644
--- a/build_files/build_environment/cmake/jemalloc.cmake
+++ b/build_files/build_environment/cmake/jemalloc.cmake
@@ -17,12 +17,12 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_jemalloc
-	URL ${JEMALLOC_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${JEMALLOC_HASH}
-	PREFIX ${BUILD_DIR}/jemalloc
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jemalloc --disable-shared --enable-static --with-pic
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make install
-	INSTALL_DIR ${LIBDIR}/jemalloc
+  URL ${JEMALLOC_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${JEMALLOC_HASH}
+  PREFIX ${BUILD_DIR}/jemalloc
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jemalloc --disable-shared --enable-static --with-pic
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/jemalloc/src/external_jemalloc/ && make install
+  INSTALL_DIR ${LIBDIR}/jemalloc
 )
diff --git a/build_files/build_environment/cmake/jpeg.cmake b/build_files/build_environment/cmake/jpeg.cmake
index 9975bb9c4f60f1f0135a40bf876f4c327d545545..47f526e3d29e5ad56ae36873ec27983b2f4cdd51 100644
--- a/build_files/build_environment/cmake/jpeg.cmake
+++ b/build_files/build_environment/cmake/jpeg.cmake
@@ -17,49 +17,49 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	# cmake for windows
-	set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON  -DCMAKE_DEBUG_POSTFIX=d)
+  # cmake for windows
+  set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON  -DCMAKE_DEBUG_POSTFIX=d)
 
-	ExternalProject_Add(external_jpeg
-		URL ${JPEG_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${JPEG_HASH}
-		PREFIX ${BUILD_DIR}/jpg
-		CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
-		INSTALL_DIR ${LIBDIR}/jpg
-	)
+  ExternalProject_Add(external_jpeg
+    URL ${JPEG_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${JPEG_HASH}
+    PREFIX ${BUILD_DIR}/jpg
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
+    INSTALL_DIR ${LIBDIR}/jpg
+  )
 
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_jpeg after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpegd${LIBEXT}  ${LIBDIR}/jpg/lib/jpeg${LIBEXT}
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_jpeg after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpegd${LIBEXT}  ${LIBDIR}/jpg/lib/jpeg${LIBEXT}
+      DEPENDEES install
+    )
+  endif()
 
-	if(BUILD_MODE STREQUAL Release)
-		set(JPEG_LIBRARY jpeg-static${LIBEXT})
-	else()
-		set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    set(JPEG_LIBRARY jpeg-static${LIBEXT})
+  else()
+    set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
+  endif()
 else(WIN32)
-	# autoconf for unix
-	if(APPLE)
-		set(JPEG_EXTRA_ARGS --host x86_64-apple-darwin --with-jpeg8)
-	else()
-		set(JPEG_EXTRA_ARGS --with-jpeg8)
-	endif()
+  # autoconf for unix
+  if(APPLE)
+    set(JPEG_EXTRA_ARGS --host x86_64-apple-darwin --with-jpeg8)
+  else()
+    set(JPEG_EXTRA_ARGS --with-jpeg8)
+  endif()
 
-	ExternalProject_Add(external_jpeg
-		URL ${JPEG_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${JPEG_HASH}
-		CONFIGURE_COMMAND ${CONFIGURE_ENV} && autoreconf -fiv && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jpg NASM=yasm ${JPEG_EXTRA_ARGS}
-		BUILD_IN_SOURCE 1
-		BUILD_COMMAND ${CONFIGURE_ENV} && make install
-		PREFIX ${BUILD_DIR}/jpg
-		CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
-		INSTALL_DIR ${LIBDIR}/jpg
-	)
+  ExternalProject_Add(external_jpeg
+    URL ${JPEG_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${JPEG_HASH}
+    CONFIGURE_COMMAND ${CONFIGURE_ENV} && autoreconf -fiv && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/jpg NASM=yasm ${JPEG_EXTRA_ARGS}
+    BUILD_IN_SOURCE 1
+    BUILD_COMMAND ${CONFIGURE_ENV} && make install
+    PREFIX ${BUILD_DIR}/jpg
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
+    INSTALL_DIR ${LIBDIR}/jpg
+  )
 
-	set(JPEG_LIBRARY libjpeg${LIBEXT})
+  set(JPEG_LIBRARY libjpeg${LIBEXT})
 endif(WIN32)
diff --git a/build_files/build_environment/cmake/lame.cmake b/build_files/build_environment/cmake/lame.cmake
index b7b9275bf5ee0378fb0adb0527b1d895ebcc2f39..d60784e8a4007cb3d1e37ec0a0eb52a34d93df6f 100644
--- a/build_files/build_environment/cmake/lame.cmake
+++ b/build_files/build_environment/cmake/lame.cmake
@@ -18,30 +18,30 @@
 
 set(LAME_EXTRA_ARGS)
 if(MSVC)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
-	set(LAME_EXTRA_ARGS CFLAGS=-msse)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+  set(LAME_EXTRA_ARGS CFLAGS=-msse)
+  endif()
 endif()
 
 ExternalProject_Add(external_lame
-	URL ${LAME_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${LAME_HASH}
-	PREFIX ${BUILD_DIR}/lame
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lame --disable-shared --enable-static ${LAME_EXTRA_ARGS}
-		--enable-export=full
-		--with-fileio=sndfile
-		--without-vorbis
-		--with-pic
-		--disable-mp3x
-		--disable-mp3rtp
-		--disable-gtktest
-		--disable-frontend
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make install
-	INSTALL_DIR ${LIBDIR}/lame
+  URL ${LAME_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${LAME_HASH}
+  PREFIX ${BUILD_DIR}/lame
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lame --disable-shared --enable-static ${LAME_EXTRA_ARGS}
+    --enable-export=full
+    --with-fileio=sndfile
+    --without-vorbis
+    --with-pic
+    --disable-mp3x
+    --disable-mp3rtp
+    --disable-gtktest
+    --disable-frontend
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lame/src/external_lame/ && make install
+  INSTALL_DIR ${LIBDIR}/lame
 )
 
 if(MSVC)
-	set_target_properties(external_lame PROPERTIES FOLDER Mingw)
+  set_target_properties(external_lame PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/lcms.cmake b/build_files/build_environment/cmake/lcms.cmake
index 852d2b8d04ce5f382c68662228300b096560f38a..7e8f955aa5864f9e86291a1bcfc184485ad23069 100644
--- a/build_files/build_environment/cmake/lcms.cmake
+++ b/build_files/build_environment/cmake/lcms.cmake
@@ -20,12 +20,12 @@ set(LCMS_EXTRA_ARGS
 )
 
 ExternalProject_Add(external_lcms
-	URL ${LCMS_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${LCMS_HASH}
-	PREFIX ${BUILD_DIR}/lcms
-	#patch taken from ocio
-	PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_lcms.txt ${BUILD_DIR}/lcms/src/external_lcms/CMakeLists.txt
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/lcms ${DEFAULT_CMAKE_FLAGS} ${LCMS_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/lcms
+  URL ${LCMS_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${LCMS_HASH}
+  PREFIX ${BUILD_DIR}/lcms
+  #patch taken from ocio
+  PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_lcms.txt ${BUILD_DIR}/lcms/src/external_lcms/CMakeLists.txt
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/lcms ${DEFAULT_CMAKE_FLAGS} ${LCMS_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/lcms
 )
diff --git a/build_files/build_environment/cmake/llvm.cmake b/build_files/build_environment/cmake/llvm.cmake
index e3386b941eee5883263c97886b93092bbcc609a8..8acf6b56e3df24af4cf6d603f98a6117564a8dbe 100644
--- a/build_files/build_environment/cmake/llvm.cmake
+++ b/build_files/build_environment/cmake/llvm.cmake
@@ -17,42 +17,42 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(LLVM_EXTRA_ARGS
-	-DLLVM_USE_CRT_RELEASE=MT
-	-DLLVM_USE_CRT_DEBUG=MTd
-	-DLLVM_INCLUDE_TESTS=OFF
-	-DLLVM_TARGETS_TO_BUILD=X86
-	-DLLVM_INCLUDE_EXAMPLES=OFF
-	-DLLVM_ENABLE_TERMINFO=OFF
+  -DLLVM_USE_CRT_RELEASE=MT
+  -DLLVM_USE_CRT_DEBUG=MTd
+  -DLLVM_INCLUDE_TESTS=OFF
+  -DLLVM_TARGETS_TO_BUILD=X86
+  -DLLVM_INCLUDE_EXAMPLES=OFF
+  -DLLVM_ENABLE_TERMINFO=OFF
 )
 
 if(WIN32)
-	set(LLVM_GENERATOR "Ninja")
+  set(LLVM_GENERATOR "Ninja")
 else()
-	set(LLVM_GENERATOR "Unix Makefiles")
+  set(LLVM_GENERATOR "Unix Makefiles")
 endif()
 
 # short project name due to long filename issues on windows
 ExternalProject_Add(ll
-	URL ${LLVM_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${LLVM_HASH}
-	CMAKE_GENERATOR ${LLVM_GENERATOR}
-	PREFIX ${BUILD_DIR}/ll
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/llvm ${DEFAULT_CMAKE_FLAGS} ${LLVM_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/llvm
+  URL ${LLVM_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${LLVM_HASH}
+  CMAKE_GENERATOR ${LLVM_GENERATOR}
+  PREFIX ${BUILD_DIR}/ll
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/llvm ${DEFAULT_CMAKE_FLAGS} ${LLVM_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/llvm
 )
 
 if(MSVC)
-	if(BUILD_MODE STREQUAL Release)
-		set(LLVM_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/ ${HARVEST_TARGET}/llvm/ )
-	else()
-		set(LLVM_HARVEST_COMMAND
-			${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
-			${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/include/ ${HARVEST_TARGET}/llvm/debug/include/
-		)
-	endif()
-	ExternalProject_Add_Step(ll after_install
-		COMMAND ${LLVM_HARVEST_COMMAND}
-		DEPENDEES mkdir update patch download configure build install
-	)
+  if(BUILD_MODE STREQUAL Release)
+    set(LLVM_HARVEST_COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/ ${HARVEST_TARGET}/llvm/ )
+  else()
+    set(LLVM_HARVEST_COMMAND
+      ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/lib/ ${HARVEST_TARGET}/llvm/debug/lib/ &&
+      ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/llvm/include/ ${HARVEST_TARGET}/llvm/debug/include/
+    )
+  endif()
+  ExternalProject_Add_Step(ll after_install
+    COMMAND ${LLVM_HARVEST_COMMAND}
+    DEPENDEES mkdir update patch download configure build install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/lzma.cmake b/build_files/build_environment/cmake/lzma.cmake
index ef8adde293021b20cf7daf91b65d52edbcf895dc..ecceb1172b4f518acc7abebf5549489a2b51b1fe 100644
--- a/build_files/build_environment/cmake/lzma.cmake
+++ b/build_files/build_environment/cmake/lzma.cmake
@@ -19,14 +19,14 @@
 set(LZMA_PATCH_CMD echo .)
 
 ExternalProject_Add(external_lzma
-	URL ${LZMA_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${LZMA_HASH}
-	PREFIX ${BUILD_DIR}/lzma
-	PATCH_COMMAND ${LZMA_PATCH_CMD}
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lzma
-		--disable-shared
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make install
-	INSTALL_DIR ${LIBDIR}/lzma
+  URL ${LZMA_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${LZMA_HASH}
+  PREFIX ${BUILD_DIR}/lzma
+  PATCH_COMMAND ${LZMA_PATCH_CMD}
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/lzma
+    --disable-shared
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/lzma/src/external_lzma/ && make install
+  INSTALL_DIR ${LIBDIR}/lzma
 )
diff --git a/build_files/build_environment/cmake/numpy.cmake b/build_files/build_environment/cmake/numpy.cmake
index 698fae4f666df3aa14754f22909f4ecf698f25a3..1a6ffa95ad6d488cef6408f8019506e460eb76c9 100644
--- a/build_files/build_environment/cmake/numpy.cmake
+++ b/build_files/build_environment/cmake/numpy.cmake
@@ -17,50 +17,50 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(MSVC)
-	if(BUILD_MODE STREQUAL Debug)
-		set(NUMPY_DIR_POSTFIX -pydebug)
-		set(NUMPY_ARCHIVE_POSTFIX d)
-		set(NUMPY_BUILD_OPTION --debug)
-	else()
-		set(NUMPY_DIR_POSTFIX)
-		set(NUMPY_ARCHIVE_POSTFIX)
-		set(NUMPY_BUILD_OPTION)
-	endif()
+  if(BUILD_MODE STREQUAL Debug)
+    set(NUMPY_DIR_POSTFIX -pydebug)
+    set(NUMPY_ARCHIVE_POSTFIX d)
+    set(NUMPY_BUILD_OPTION --debug)
+  else()
+    set(NUMPY_DIR_POSTFIX)
+    set(NUMPY_ARCHIVE_POSTFIX)
+    set(NUMPY_BUILD_OPTION)
+  endif()
 endif()
 
 set(NUMPY_POSTFIX)
 
 if(WIN32)
-	set(NUMPY_INSTALL
-		${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/python/src/external_python/run/lib/site-packages/numpy/core/include/numpy" "${LIBDIR}/python/include/python${PYTHON_SHORT_VERSION}/numpy" &&
-		${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/numpy/src/external_numpy/build/lib.${PYTHON_ARCH2}-${PYTHON_SHORT_VERSION}${NUMPY_DIR_POSTFIX}"
-		${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz" "."
-	)
+  set(NUMPY_INSTALL
+    ${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/python/src/external_python/run/lib/site-packages/numpy/core/include/numpy" "${LIBDIR}/python/include/python${PYTHON_SHORT_VERSION}/numpy" &&
+    ${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/numpy/src/external_numpy/build/lib.${PYTHON_ARCH2}-${PYTHON_SHORT_VERSION}${NUMPY_DIR_POSTFIX}"
+    ${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz" "."
+  )
 else()
-	set(NUMPY_INSTALL echo .)
-	set(NUMPY_PATCH echo .)
+  set(NUMPY_INSTALL echo .)
+  set(NUMPY_PATCH echo .)
 endif()
 
 ExternalProject_Add(external_numpy
-	URL ${NUMPY_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${NUMPY_HASH}
-	PREFIX ${BUILD_DIR}/numpy
-	PATCH_COMMAND ${NUMPY_PATCH}
-	CONFIGURE_COMMAND ""
-	LOG_BUILD 1
-	BUILD_COMMAND ${PYTHON_BINARY} ${BUILD_DIR}/numpy/src/external_numpy/setup.py build ${NUMPY_BUILD_OPTION} install --old-and-unmanageable
-	INSTALL_COMMAND ${NUMPY_INSTALL}
+  URL ${NUMPY_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${NUMPY_HASH}
+  PREFIX ${BUILD_DIR}/numpy
+  PATCH_COMMAND ${NUMPY_PATCH}
+  CONFIGURE_COMMAND ""
+  LOG_BUILD 1
+  BUILD_COMMAND ${PYTHON_BINARY} ${BUILD_DIR}/numpy/src/external_numpy/setup.py build ${NUMPY_BUILD_OPTION} install --old-and-unmanageable
+  INSTALL_COMMAND ${NUMPY_INSTALL}
 )
 
 if(WIN32)
-	ExternalProject_Add_Step(external_numpy after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz
-			DEPENDEES install
-		)
+  ExternalProject_Add_Step(external_numpy after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz
+      DEPENDEES install
+    )
 endif()
 
 add_dependencies(
-	external_numpy
-	Make_Python_Environment
+  external_numpy
+  Make_Python_Environment
 )
diff --git a/build_files/build_environment/cmake/ogg.cmake b/build_files/build_environment/cmake/ogg.cmake
index 1f69cee09968081216bf451b8567b9630166712c..e2d0f0905b84151df7b1a17a0f9ec8b2e0a0127a 100644
--- a/build_files/build_environment/cmake/ogg.cmake
+++ b/build_files/build_environment/cmake/ogg.cmake
@@ -17,16 +17,16 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_ogg
-	URL ${OGG_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${OGG_HASH}
-	PREFIX ${BUILD_DIR}/ogg
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ogg --disable-shared --enable-static
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make install
-	INSTALL_DIR ${LIBDIR}/ogg
+  URL ${OGG_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${OGG_HASH}
+  PREFIX ${BUILD_DIR}/ogg
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ogg --disable-shared --enable-static
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ogg/src/external_ogg/ && make install
+  INSTALL_DIR ${LIBDIR}/ogg
 )
 
 if(MSVC)
-	set_target_properties(external_ogg PROPERTIES FOLDER Mingw)
+  set_target_properties(external_ogg PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/openal.cmake b/build_files/build_environment/cmake/openal.cmake
index 7a693b1fce24ade229e672b8746c52faffc5d7ef..44f6cdf72a3c57533978c08831eaf4a0a573fafa 100644
--- a/build_files/build_environment/cmake/openal.cmake
+++ b/build_files/build_environment/cmake/openal.cmake
@@ -17,51 +17,51 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(BUILD_MODE STREQUAL Release)
-	set(OPENAL_EXTRA_ARGS
-		-DALSOFT_UTILS=OFF
-		-DALSOFT_NO_CONFIG_UTIL=ON
-		-DALSOFT_EXAMPLES=OFF
-		-DALSOFT_TESTS=OFF
-		-DALSOFT_CONFIG=OFF
-		-DALSOFT_HRTF_DEFS=OFF
-		-DALSOFT_INSTALL=ON
-		-DALSOFT_BACKEND_SNDIO=OFF
-	)
+  set(OPENAL_EXTRA_ARGS
+    -DALSOFT_UTILS=OFF
+    -DALSOFT_NO_CONFIG_UTIL=ON
+    -DALSOFT_EXAMPLES=OFF
+    -DALSOFT_TESTS=OFF
+    -DALSOFT_CONFIG=OFF
+    -DALSOFT_HRTF_DEFS=OFF
+    -DALSOFT_INSTALL=ON
+    -DALSOFT_BACKEND_SNDIO=OFF
+  )
 
-	if(UNIX)
-		set(OPENAL_EXTRA_ARGS
-			${OPENAL_EXTRA_ARGS}
-			-DLIBTYPE=STATIC
-		)
-	endif()
+  if(UNIX)
+    set(OPENAL_EXTRA_ARGS
+      ${OPENAL_EXTRA_ARGS}
+      -DLIBTYPE=STATIC
+    )
+  endif()
 
-	if(UNIX AND NOT APPLE)
-		# Ensure we have backends for playback.
-		set(OPENAL_EXTRA_ARGS
-			${OPENAL_EXTRA_ARGS}
-			-DALSOFT_REQUIRE_ALSA=ON
-			-DALSOFT_REQUIRE_OSS=ON
-			-DALSOFT_REQUIRE_PULSEAUDIO=ON
-		)
-	endif()
+  if(UNIX AND NOT APPLE)
+    # Ensure we have backends for playback.
+    set(OPENAL_EXTRA_ARGS
+      ${OPENAL_EXTRA_ARGS}
+      -DALSOFT_REQUIRE_ALSA=ON
+      -DALSOFT_REQUIRE_OSS=ON
+      -DALSOFT_REQUIRE_PULSEAUDIO=ON
+    )
+  endif()
 
-	ExternalProject_Add(external_openal
-		URL ${OPENAL_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${OPENAL_HASH}
-		PREFIX ${BUILD_DIR}/openal
-		CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openal ${DEFAULT_CMAKE_FLAGS} ${OPENAL_EXTRA_ARGS}
-		INSTALL_DIR ${LIBDIR}/openal
-		PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openal/src/external_openal < ${PATCH_DIR}/openal.diff
-	)
+  ExternalProject_Add(external_openal
+    URL ${OPENAL_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${OPENAL_HASH}
+    PREFIX ${BUILD_DIR}/openal
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openal ${DEFAULT_CMAKE_FLAGS} ${OPENAL_EXTRA_ARGS}
+    INSTALL_DIR ${LIBDIR}/openal
+    PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openal/src/external_openal < ${PATCH_DIR}/openal.diff
+  )
 
-	if(WIN32)
-		ExternalProject_Add_Step(external_openal after_install
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/lib/openal32.lib ${HARVEST_TARGET}/openal/lib/openal32.lib
-			COMMAND	${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/bin/openal32.dll ${HARVEST_TARGET}/openal/lib/openal32.dll
-			COMMAND	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openal/include/ ${HARVEST_TARGET}/openal/include/
-			DEPENDEES install
-		)
-	endif()
+  if(WIN32)
+    ExternalProject_Add_Step(external_openal after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/lib/openal32.lib ${HARVEST_TARGET}/openal/lib/openal32.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openal/bin/openal32.dll ${HARVEST_TARGET}/openal/lib/openal32.dll
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openal/include/ ${HARVEST_TARGET}/openal/include/
+      DEPENDEES install
+    )
+  endif()
 
 endif()
diff --git a/build_files/build_environment/cmake/opencollada.cmake b/build_files/build_environment/cmake/opencollada.cmake
index ec3dcde160703d681d022c35e2b20a6f8689bbe6..e1a8abc40ce43c6472b170469460b882f2e28e69 100644
--- a/build_files/build_environment/cmake/opencollada.cmake
+++ b/build_files/build_environment/cmake/opencollada.cmake
@@ -17,49 +17,49 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(UNIX)
-	set(OPENCOLLADA_EXTRA_ARGS
-		-DLIBXML2_INCLUDE_DIR=${LIBDIR}/xml2/include/libxml2
-		-DLIBXML2_LIBRARIES=${LIBDIR}/xml2/lib/libxml2.a)
+  set(OPENCOLLADA_EXTRA_ARGS
+    -DLIBXML2_INCLUDE_DIR=${LIBDIR}/xml2/include/libxml2
+    -DLIBXML2_LIBRARIES=${LIBDIR}/xml2/lib/libxml2.a)
 endif()
 
 ExternalProject_Add(external_opencollada
-	URL ${OPENCOLLADA_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENCOLLADA_HASH}
-	PREFIX ${BUILD_DIR}/opencollada
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencollada/src/external_opencollada < ${PATCH_DIR}/opencollada.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencollada ${DEFAULT_CMAKE_FLAGS} ${OPENCOLLADA_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/opencollada
+  URL ${OPENCOLLADA_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENCOLLADA_HASH}
+  PREFIX ${BUILD_DIR}/opencollada
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencollada/src/external_opencollada < ${PATCH_DIR}/opencollada.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencollada ${DEFAULT_CMAKE_FLAGS} ${OPENCOLLADA_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/opencollada
 )
 
 if(UNIX)
-	add_dependencies(
-		external_opencollada
-		external_xml2
-	)
+  add_dependencies(
+    external_opencollada
+    external_xml2
+  )
 endif()
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_opencollada after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencollada/ ${HARVEST_TARGET}/opencollada/
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_opencollada after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/buffer.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/buffer_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/ftoa.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/ftoa_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/GeneratedSaxParser.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/GeneratedSaxParser_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/MathMLSolver.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/MathMLSolver_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADABaseUtils.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADABaseUtils_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAFramework.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAFramework_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/pcre.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/pcre_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/UTF.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/UTF_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/xml.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/xml_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_opencollada after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencollada/ ${HARVEST_TARGET}/opencollada/
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_opencollada after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/buffer.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/buffer_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/ftoa.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/ftoa_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/GeneratedSaxParser.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/GeneratedSaxParser_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/MathMLSolver.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/MathMLSolver_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADABaseUtils.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADABaseUtils_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAFramework.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAFramework_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADASaxFrameworkLoader_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/OpenCOLLADAStreamWriter_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/pcre.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/pcre_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/UTF.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/UTF_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencollada/lib/opencollada/xml.lib ${HARVEST_TARGET}/opencollada/lib/opencollada/xml_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/opencolorio.cmake b/build_files/build_environment/cmake/opencolorio.cmake
index c0187e8a27e0285d4b4ee2e99ea9660879ce6a41..0f6b8fee673c65b1b5f6f046b47a4ceecc56356c 100644
--- a/build_files/build_environment/cmake/opencolorio.cmake
+++ b/build_files/build_environment/cmake/opencolorio.cmake
@@ -17,96 +17,96 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(OPENCOLORIO_EXTRA_ARGS
-	-DOCIO_BUILD_APPS=OFF
-	-DOCIO_BUILD_PYGLUE=OFF
-	-DOCIO_BUILD_NUKE=OFF
-	-DOCIO_USE_BOOST_PTR=OFF
-	-DOCIO_BUILD_STATIC=ON
-	-DOCIO_BUILD_SHARED=OFF
-	-DOCIO_BUILD_TRUELIGHT=OFF
-	-DOCIO_BUILD_DOCS=OFF
-	-DOCIO_BUILD_PYGLUE=OFF
-	-DOCIO_BUILD_JNIGLUE=OFF
-	-DOCIO_STATIC_JNIGLUE=OFF
+  -DOCIO_BUILD_APPS=OFF
+  -DOCIO_BUILD_PYGLUE=OFF
+  -DOCIO_BUILD_NUKE=OFF
+  -DOCIO_USE_BOOST_PTR=OFF
+  -DOCIO_BUILD_STATIC=ON
+  -DOCIO_BUILD_SHARED=OFF
+  -DOCIO_BUILD_TRUELIGHT=OFF
+  -DOCIO_BUILD_DOCS=OFF
+  -DOCIO_BUILD_PYGLUE=OFF
+  -DOCIO_BUILD_JNIGLUE=OFF
+  -DOCIO_STATIC_JNIGLUE=OFF
 )
 
 if(WIN32)
-	set(OCIO_PATCH opencolorio_win.diff)
-	set(OPENCOLORIO_EXTRA_ARGS
-		${OPENCOLORIO_EXTRA_ARGS}
-		-DOCIO_BUILD_TESTS=OFF
-		-DOCIO_USE_SSE=ON
-		-DOCIO_INLINES_HIDDEN=OFF
-		-DOCIO_PYGLUE_LINK=OFF
-		-DOCIO_PYGLUE_RESPECT_ABI=OFF
-		-DOCIO_PYGLUE_SONAME=OFF
-		-DOCIO_PYGLUE_LIB_PREFIX=OFF
-		-DUSE_EXTERNAL_TINYXML=ON
-		-DTINYXML_INCLUDE_DIR=${LIBDIR}/tinyxml/include
-		-DTINYXML_LIBRARY=${LIBDIR}/tinyxml/lib/tinyxml${libext}
-		-DUSE_EXTERNAL_YAML=ON
-		-DYAML_CPP_FOUND=ON
-		-DYAML_CPP_VERSION=${YAMLCPP_VERSION}
-		-DUSE_EXTERNAL_LCMS=ON
-		-DINC_1=${LIBDIR}/tinyxml/include
-		-DINC_2=${LIBDIR}/yamlcpp/include
-		#lie because ocio cmake is demanding boost even though it is not needed
-		-DYAML_CPP_VERSION=0.5.0
-	)
+  set(OCIO_PATCH opencolorio_win.diff)
+  set(OPENCOLORIO_EXTRA_ARGS
+    ${OPENCOLORIO_EXTRA_ARGS}
+    -DOCIO_BUILD_TESTS=OFF
+    -DOCIO_USE_SSE=ON
+    -DOCIO_INLINES_HIDDEN=OFF
+    -DOCIO_PYGLUE_LINK=OFF
+    -DOCIO_PYGLUE_RESPECT_ABI=OFF
+    -DOCIO_PYGLUE_SONAME=OFF
+    -DOCIO_PYGLUE_LIB_PREFIX=OFF
+    -DUSE_EXTERNAL_TINYXML=ON
+    -DTINYXML_INCLUDE_DIR=${LIBDIR}/tinyxml/include
+    -DTINYXML_LIBRARY=${LIBDIR}/tinyxml/lib/tinyxml${libext}
+    -DUSE_EXTERNAL_YAML=ON
+    -DYAML_CPP_FOUND=ON
+    -DYAML_CPP_VERSION=${YAMLCPP_VERSION}
+    -DUSE_EXTERNAL_LCMS=ON
+    -DINC_1=${LIBDIR}/tinyxml/include
+    -DINC_2=${LIBDIR}/yamlcpp/include
+    #lie because ocio cmake is demanding boost even though it is not needed
+    -DYAML_CPP_VERSION=0.5.0
+  )
 else()
-	set(OCIO_PATCH opencolorio.diff)
-	set(OPENCOLORIO_EXTRA_ARGS
-		${OPENCOLORIO_EXTRA_ARGS}
-	)
+  set(OCIO_PATCH opencolorio.diff)
+  set(OPENCOLORIO_EXTRA_ARGS
+    ${OPENCOLORIO_EXTRA_ARGS}
+  )
 endif()
 
 ExternalProject_Add(external_opencolorio
-	URL ${OPENCOLORIO_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENCOLORIO_HASH}
-	PREFIX ${BUILD_DIR}/opencolorio
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencolorio/src/external_opencolorio < ${PATCH_DIR}/${OCIO_PATCH}
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencolorio ${DEFAULT_CMAKE_FLAGS} ${OPENCOLORIO_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/opencolorio
+  URL ${OPENCOLORIO_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENCOLORIO_HASH}
+  PREFIX ${BUILD_DIR}/opencolorio
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/opencolorio/src/external_opencolorio < ${PATCH_DIR}/${OCIO_PATCH}
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opencolorio ${DEFAULT_CMAKE_FLAGS} ${OPENCOLORIO_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/opencolorio
 )
 
 if(NOT WIN32)
-	add_custom_command(
-		OUTPUT ${LIBDIR}/opencolorio/lib/libtinyxml.a
-		COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libtinyxml.a ${LIBDIR}/opencolorio/lib/libtinyxml.a
-		COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/libyaml-cpp.a
-	)
-	add_custom_target(external_opencolorio_extra ALL DEPENDS external_opencolorio ${LIBDIR}/opencolorio/lib/libtinyxml.a)
+  add_custom_command(
+    OUTPUT ${LIBDIR}/opencolorio/lib/libtinyxml.a
+    COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libtinyxml.a ${LIBDIR}/opencolorio/lib/libtinyxml.a
+    COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/libyaml-cpp.a
+  )
+  add_custom_target(external_opencolorio_extra ALL DEPENDS external_opencolorio ${LIBDIR}/opencolorio/lib/libtinyxml.a)
 endif()
 
 add_dependencies(
-	external_opencolorio
-	external_boost
+  external_opencolorio
+  external_boost
 )
 
 if(WIN32)
-	add_dependencies(
-		external_opencolorio
-		external_tinyxml
-		external_yamlcpp
+  add_dependencies(
+    external_opencolorio
+    external_tinyxml
+    external_yamlcpp
 
-	)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_opencolorio after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/include ${HARVEST_TARGET}/opencolorio/include
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib/static ${HARVEST_TARGET}/opencolorio/lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmt.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml.lib
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_opencolorio after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/static/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmtd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml_d.lib
-			DEPENDEES install
-		)
-	endif()
+  )
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_opencolorio after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/include ${HARVEST_TARGET}/opencolorio/include
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib/static ${HARVEST_TARGET}/opencolorio/lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmt.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml.lib
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_opencolorio after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/static/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmtd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml_d.lib
+      DEPENDEES install
+    )
+  endif()
 
 endif()
diff --git a/build_files/build_environment/cmake/openexr.cmake b/build_files/build_environment/cmake/openexr.cmake
index 59e9a46b4f8a6d4b9f86d2e3b3823b648565b228..7ac85ab9bdf1b1bea6de2d620ed9a8216db85a1d 100644
--- a/build_files/build_environment/cmake/openexr.cmake
+++ b/build_files/build_environment/cmake/openexr.cmake
@@ -17,62 +17,62 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
-	set(OPENEXR_EXTRA_ARGS
-		-DCMAKE_CXX_STANDARD_LIBRARIES=${OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES}
-		-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-		-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-		-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase
-		-DOPENEXR_BUILD_ILMBASE=On
-		-DOPENEXR_BUILD_OPENEXR=On
-		-DOPENEXR_BUILD_PYTHON_LIBS=Off
-		-DOPENEXR_BUILD_STATIC=On
-		-DOPENEXR_BUILD_SHARED=Off
-		-DOPENEXR_BUILD_TESTS=Off
-		-DOPENEXR_BUILD_VIEWERS=Off
-		-DOPENEXR_BUILD_UTILS=Off
-		-DOPENEXR_NAMESPACE_VERSIONING=Off
-	)
-	ExternalProject_Add(external_openexr
-		URL ${OPENEXR_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${OPENEXR_HASH}
-		PREFIX ${BUILD_DIR}/openexr
-		CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
-		INSTALL_DIR ${LIBDIR}/openexr
-	)
+  set(OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
+  set(OPENEXR_EXTRA_ARGS
+    -DCMAKE_CXX_STANDARD_LIBRARIES=${OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES}
+    -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+    -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+    -DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase
+    -DOPENEXR_BUILD_ILMBASE=On
+    -DOPENEXR_BUILD_OPENEXR=On
+    -DOPENEXR_BUILD_PYTHON_LIBS=Off
+    -DOPENEXR_BUILD_STATIC=On
+    -DOPENEXR_BUILD_SHARED=Off
+    -DOPENEXR_BUILD_TESTS=Off
+    -DOPENEXR_BUILD_VIEWERS=Off
+    -DOPENEXR_BUILD_UTILS=Off
+    -DOPENEXR_NAMESPACE_VERSIONING=Off
+  )
+  ExternalProject_Add(external_openexr
+    URL ${OPENEXR_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${OPENEXR_HASH}
+    PREFIX ${BUILD_DIR}/openexr
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS}
+    INSTALL_DIR ${LIBDIR}/openexr
+  )
 
-	ExternalProject_Add_Step(external_openexr after_install
-		COMMAND	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${HARVEST_TARGET}/openexr/lib
-		#libs have moved between versions, just duplicate it for now.
-		COMMAND	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${LIBDIR}/ilmbase/lib
-		COMMAND	${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/include ${HARVEST_TARGET}/openexr/include
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_openexr after_install
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${HARVEST_TARGET}/openexr/lib
+    #libs have moved between versions, just duplicate it for now.
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${LIBDIR}/ilmbase/lib
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/include ${HARVEST_TARGET}/openexr/include
+    DEPENDEES install
+  )
 
 else()
-	set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig)
-	set(OPENEXR_EXTRA_ARGS
-	  --enable-static
-	  --disable-shared
-	  --enable-cxxstd=11
-	  --with-ilmbase-prefix=${LIBDIR}/ilmbase
-	  )
+  set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig)
+  set(OPENEXR_EXTRA_ARGS
+    --enable-static
+    --disable-shared
+    --enable-cxxstd=11
+    --with-ilmbase-prefix=${LIBDIR}/ilmbase
+    )
 
-	ExternalProject_Add(external_openexr
-		URL ${OPENEXR_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${OPENEXR_HASH}
-		PREFIX ${BUILD_DIR}/openexr
-		CONFIGURE_COMMAND ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${OPENEXR_PKG_CONFIG_PATH} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/openexr ${OPENEXR_EXTRA_ARGS}
-		BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make -j${MAKE_THREADS}
-		INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make install
-		INSTALL_DIR ${LIBDIR}/openexr
-	)
+  ExternalProject_Add(external_openexr
+    URL ${OPENEXR_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${OPENEXR_HASH}
+    PREFIX ${BUILD_DIR}/openexr
+    CONFIGURE_COMMAND ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${OPENEXR_PKG_CONFIG_PATH} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/openexr ${OPENEXR_EXTRA_ARGS}
+    BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make -j${MAKE_THREADS}
+    INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make install
+    INSTALL_DIR ${LIBDIR}/openexr
+  )
 endif()
 
 add_dependencies(
-	external_openexr
-	external_zlib
-	external_ilmbase
+  external_openexr
+  external_zlib
+  external_ilmbase
 )
diff --git a/build_files/build_environment/cmake/openimageio.cmake b/build_files/build_environment/cmake/openimageio.cmake
index 73d1f4a78712d1ee68c695f2550b610269d9f830..920e9ee0273e6be591d0bec06e54b23b0479cba2 100644
--- a/build_files/build_environment/cmake/openimageio.cmake
+++ b/build_files/build_environment/cmake/openimageio.cmake
@@ -17,136 +17,136 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(BUILD_MODE STREQUAL Release)
-	set(OIIO_TOOLS ON)
+  set(OIIO_TOOLS ON)
 else()
-	set(OIIO_TOOLS OFF)
+  set(OIIO_TOOLS OFF)
 endif()
 
 if(UNIX AND NOT APPLE)
-	# This causes linking to static pthread libraries which gives link errors.
-	# Since we manually specify library paths it should static link other libs.
-	set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=OFF)
+  # This causes linking to static pthread libraries which gives link errors.
+  # Since we manually specify library paths it should static link other libs.
+  set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=OFF)
 else()
-	set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=ON)
+  set(OPENIMAGEIO_LINKSTATIC -DLINKSTATIC=ON)
 endif()
 
 if(WIN32)
-	set(PNG_LIBNAME libpng16_static${LIBEXT})
-	set(OIIO_SIMD_FLAGS -DUSE_SIMD=sse2 -DOPJ_STATIC=1)
-	set(OPENJPEG_POSTFIX _msvc)
+  set(PNG_LIBNAME libpng16_static${LIBEXT})
+  set(OIIO_SIMD_FLAGS -DUSE_SIMD=sse2 -DOPJ_STATIC=1)
+  set(OPENJPEG_POSTFIX _msvc)
 else()
-	set(PNG_LIBNAME libpng${LIBEXT})
-	set(OIIO_SIMD_FLAGS)
+  set(PNG_LIBNAME libpng${LIBEXT})
+  set(OIIO_SIMD_FLAGS)
 endif()
 
 if(WITH_WEBP)
-	set(WEBP_ARGS
-		-DWEBP_INCLUDE_DIR=${LIBDIR}/webp/include
-		-DWEBP_LIBRARY=${LIBDIR}/webp/lib/${LIBPREFIX}webp${LIBEXT}
-	)
-	set(WEBP_DEP external_webp)
+  set(WEBP_ARGS
+    -DWEBP_INCLUDE_DIR=${LIBDIR}/webp/include
+    -DWEBP_LIBRARY=${LIBDIR}/webp/lib/${LIBPREFIX}webp${LIBEXT}
+  )
+  set(WEBP_DEP external_webp)
 endif()
 
 if(MSVC)
-	set(OPENJPEG_FLAGS
-		-DOPENJPEG_HOME=${LIBDIR}/openjpeg_msvc
-		-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg_msvc/include/openjpeg-${OPENJPEG_SHORT_VERSION}
-		-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
-		-DOPENJPEG_LIBRARY_DEBUG=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
-	)
+  set(OPENJPEG_FLAGS
+    -DOPENJPEG_HOME=${LIBDIR}/openjpeg_msvc
+    -DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg_msvc/include/openjpeg-${OPENJPEG_SHORT_VERSION}
+    -DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
+    -DOPENJPEG_LIBRARY_DEBUG=${LIBDIR}/openjpeg_msvc/lib/openjp2${LIBEXT}
+  )
 else()
-	set(OPENJPEG_FLAGS
-		-DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION}
-		-DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg/lib/${OPENJPEG_LIBRARY}
-	)
+  set(OPENJPEG_FLAGS
+    -DOPENJPEG_INCLUDE_DIR=${LIBDIR}/openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION}
+    -DOPENJPEG_LIBRARY=${LIBDIR}/openjpeg/lib/${OPENJPEG_LIBRARY}
+  )
 endif()
 
 set(OPENIMAGEIO_EXTRA_ARGS
-	-DBUILDSTATIC=ON
-	${OPENIMAGEIO_LINKSTATIC}
-	-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/openexr/
-	-DOPENEXR_ILMIMF_LIBRARIES=${LIBDIR}/openexr/lib/IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
-	-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
-	-DBoost_USE_MULTITHREADED=ON
-	-DBoost_USE_STATIC_LIBS=ON
-	-DBoost_USE_STATIC_RUNTIME=ON
-	-DBOOST_ROOT=${LIBDIR}/boost
-	-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
-	-DBoost_NO_SYSTEM_PATHS=ON
-	-OIIO_BUILD_CPP11=ON
-	-DUSE_OPENGL=OFF
-	-DUSE_TBB=OFF
-	-DUSE_FIELD3D=OFF
-	-DUSE_QT=OFF
-	-DUSE_PYTHON=OFF
-	-DUSE_GIF=OFF
-	-DUSE_OPENCV=OFF
-	-DUSE_OPENSSL=OFF
-	-DUSE_OPENJPEG=ON
-	-DUSE_FFMPEG=OFF
-	-DUSE_PTEX=OFF
-	-DUSE_FREETYPE=OFF
-	-DUSE_LIBRAW=OFF
-	-DUSE_PYTHON=OFF
-	-DUSE_PYTHON3=OFF
-	-DUSE_OCIO=OFF
-	-DUSE_WEBP=${WITH_WEBP}
-	-DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
-	-DOIIO_BUILD_TESTS=OFF
-	-DBUILD_TESTING=OFF
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
-	-DPNG_LIBRARY=${LIBDIR}/png/lib/${PNG_LIBNAME}
-	-DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
-	-DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
-	-DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
-	-DJPEG_LIBRARY=${LIBDIR}/jpg/lib/${JPEG_LIBRARY}
-	-DJPEG_INCLUDE_DIR=${LIBDIR}/jpg/include
-	${OPENJPEG_FLAGS}
-	-DOCIO_PATH=${LIBDIR}/opencolorio/
-	-DOpenEXR_USE_STATIC_LIBS=On
-	-DOPENEXR_HOME=${LIBDIR}/openexr/
-	-DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/
-	-DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/
-	-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
-	-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
-	-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
-	-DSTOP_ON_WARNING=OFF
-	${WEBP_FLAGS}
-	${OIIO_SIMD_FLAGS}
+  -DBUILDSTATIC=ON
+  ${OPENIMAGEIO_LINKSTATIC}
+  -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/openexr/
+  -DOPENEXR_ILMIMF_LIBRARIES=${LIBDIR}/openexr/lib/IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
+  -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
+  -DBoost_USE_MULTITHREADED=ON
+  -DBoost_USE_STATIC_LIBS=ON
+  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBOOST_ROOT=${LIBDIR}/boost
+  -DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
+  -DBoost_NO_SYSTEM_PATHS=ON
+  -OIIO_BUILD_CPP11=ON
+  -DUSE_OPENGL=OFF
+  -DUSE_TBB=OFF
+  -DUSE_FIELD3D=OFF
+  -DUSE_QT=OFF
+  -DUSE_PYTHON=OFF
+  -DUSE_GIF=OFF
+  -DUSE_OPENCV=OFF
+  -DUSE_OPENSSL=OFF
+  -DUSE_OPENJPEG=ON
+  -DUSE_FFMPEG=OFF
+  -DUSE_PTEX=OFF
+  -DUSE_FREETYPE=OFF
+  -DUSE_LIBRAW=OFF
+  -DUSE_PYTHON=OFF
+  -DUSE_PYTHON3=OFF
+  -DUSE_OCIO=OFF
+  -DUSE_WEBP=${WITH_WEBP}
+  -DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
+  -DOIIO_BUILD_TESTS=OFF
+  -DBUILD_TESTING=OFF
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
+  -DPNG_LIBRARY=${LIBDIR}/png/lib/${PNG_LIBNAME}
+  -DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
+  -DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
+  -DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
+  -DJPEG_LIBRARY=${LIBDIR}/jpg/lib/${JPEG_LIBRARY}
+  -DJPEG_INCLUDE_DIR=${LIBDIR}/jpg/include
+  ${OPENJPEG_FLAGS}
+  -DOCIO_PATH=${LIBDIR}/opencolorio/
+  -DOpenEXR_USE_STATIC_LIBS=On
+  -DOPENEXR_HOME=${LIBDIR}/openexr/
+  -DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/
+  -DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/
+  -DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
+  -DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
+  -DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
+  -DSTOP_ON_WARNING=OFF
+  ${WEBP_FLAGS}
+  ${OIIO_SIMD_FLAGS}
 )
 
 ExternalProject_Add(external_openimageio
-	URL ${OPENIMAGEIO_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENIMAGEIO_HASH}
-	PREFIX ${BUILD_DIR}/openimageio
-	PATCH_COMMAND
-		${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/src/include < ${PATCH_DIR}/openimageio_gdi.diff &&
-		${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/ < ${PATCH_DIR}/openimageio_static_libs.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimageio ${DEFAULT_CMAKE_FLAGS} ${OPENIMAGEIO_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/openimageio
+  URL ${OPENIMAGEIO_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENIMAGEIO_HASH}
+  PREFIX ${BUILD_DIR}/openimageio
+  PATCH_COMMAND
+    ${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/src/include < ${PATCH_DIR}/openimageio_gdi.diff &&
+    ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/openimageio/src/external_openimageio/ < ${PATCH_DIR}/openimageio_static_libs.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openimageio ${DEFAULT_CMAKE_FLAGS} ${OPENIMAGEIO_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/openimageio
 )
 
 add_dependencies(
-	external_openimageio
-	external_png external_zlib
-	external_ilmbase
-	external_openexr
-	external_jpeg
-	external_boost
-	external_tiff
-	external_opencolorio
-	external_openjpeg${OPENJPEG_POSTFIX}
-	${WEBP_DEP}
+  external_openimageio
+  external_png external_zlib
+  external_ilmbase
+  external_openexr
+  external_jpeg
+  external_boost
+  external_tiff
+  external_opencolorio
+  external_openjpeg${OPENJPEG_POSTFIX}
+  ${WEBP_DEP}
 )
 if(NOT WIN32)
-	add_dependencies(
-		external_openimageio
-		external_opencolorio_extra
-	)
+  add_dependencies(
+    external_openimageio
+    external_opencolorio_extra
+  )
 endif()
diff --git a/build_files/build_environment/cmake/openjpeg.cmake b/build_files/build_environment/cmake/openjpeg.cmake
index ae320b788807bb397861ebc402c1fce89dd1cbfc..8cc52142ee07166b06163d653e7557b2ec956784 100644
--- a/build_files/build_environment/cmake/openjpeg.cmake
+++ b/build_files/build_environment/cmake/openjpeg.cmake
@@ -22,43 +22,43 @@
 set(OPENJPEG_EXTRA_ARGS -DBUILD_SHARED_LIBS=OFF)
 
 if(WIN32)
-	set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
+  set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
 else()
-	set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
+  set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
 endif()
 
 ExternalProject_Add(external_openjpeg
-	URL ${OPENJPEG_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${OPENJPEG_HASH}
-	PREFIX ${BUILD_DIR}/openjpeg
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
-	INSTALL_DIR ${LIBDIR}/openjpeg
+  URL ${OPENJPEG_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${OPENJPEG_HASH}
+  PREFIX ${BUILD_DIR}/openjpeg
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
+  INSTALL_DIR ${LIBDIR}/openjpeg
 )
 
 #on windows ffmpeg wants a mingw build, while oiio needs a msvc build
 if(MSVC)
-	set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
-	ExternalProject_Add(external_openjpeg_msvc
-		URL ${OPENJPEG_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH SHA256=${OPENJPEG_HASH}
-		PREFIX ${BUILD_DIR}/openjpeg_msvc
-		CMAKE_ARGS ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg_msvc -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF
-		INSTALL_DIR ${LIBDIR}/openjpeg_msvc
-	)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_openjpeg_msvc after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/lib ${HARVEST_TARGET}/openjpeg/lib &&
-					${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/include ${HARVEST_TARGET}/openjpeg/include
-			DEPENDEES install
-		)
-	endif()
+  set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
+  ExternalProject_Add(external_openjpeg_msvc
+    URL ${OPENJPEG_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH SHA256=${OPENJPEG_HASH}
+    PREFIX ${BUILD_DIR}/openjpeg_msvc
+    CMAKE_ARGS ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg_msvc -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF
+    INSTALL_DIR ${LIBDIR}/openjpeg_msvc
+  )
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_openjpeg_msvc after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/lib ${HARVEST_TARGET}/openjpeg/lib &&
+          ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openjpeg_msvc/include ${HARVEST_TARGET}/openjpeg/include
+      DEPENDEES install
+    )
+  endif()
 endif()
 
 set(OPENJPEG_LIBRARY libopenjp2${LIBEXT})
 if(MSVC)
-	set_target_properties(external_openjpeg PROPERTIES FOLDER Mingw)
+  set_target_properties(external_openjpeg PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/openmp.cmake b/build_files/build_environment/cmake/openmp.cmake
index f9f5a5cfb636a0244e9b243cb8f63d69c98ad874..05b590e49268123bb02bb62231f6c051f68c200c 100644
--- a/build_files/build_environment/cmake/openmp.cmake
+++ b/build_files/build_environment/cmake/openmp.cmake
@@ -18,16 +18,16 @@
 
 
 ExternalProject_Add(external_openmp
-	URL ${OPENMP_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENMP_HASH}
-	PREFIX ${BUILD_DIR}/openmp
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openmp ${DEFAULT_CMAKE_FLAGS}
-	INSTALL_COMMAND cd ${BUILD_DIR}/openmp/src/external_openmp-build && install_name_tool -id @executable_path/../Resources/lib/libomp.dylib runtime/src/libomp.dylib && make install
-	INSTALL_DIR ${LIBDIR}/openmp
+  URL ${OPENMP_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENMP_HASH}
+  PREFIX ${BUILD_DIR}/openmp
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openmp ${DEFAULT_CMAKE_FLAGS}
+  INSTALL_COMMAND cd ${BUILD_DIR}/openmp/src/external_openmp-build && install_name_tool -id @executable_path/../Resources/lib/libomp.dylib runtime/src/libomp.dylib && make install
+  INSTALL_DIR ${LIBDIR}/openmp
 )
 
 add_dependencies(
-	external_openmp
-	external_clang
+  external_openmp
+  external_clang
 )
diff --git a/build_files/build_environment/cmake/opensubdiv.cmake b/build_files/build_environment/cmake/opensubdiv.cmake
index 217274431d52c240204450ac73eb858031d085fd..a5cf4efd128c2cd590557f4d35de13724fd67b34 100644
--- a/build_files/build_environment/cmake/opensubdiv.cmake
+++ b/build_files/build_environment/cmake/opensubdiv.cmake
@@ -17,86 +17,86 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(OPENSUBDIV_EXTRA_ARGS
-	-DNO_EXAMPLES=ON
-	-DNO_REGRESSION=ON
-	-DNO_PYTHON=ON
-	-DNO_MAYA=ON
-	-DNO_PTEX=ON
-	-DNO_DOC=ON
-	-DNO_CLEW=OFF
-	-DNO_OPENCL=OFF
-	-DNO_TUTORIALS=ON
-	-DGLEW_INCLUDE_DIR=${LIBDIR}/glew/include
-	-DGLEW_LIBRARY=${LIBDIR}/glew/lib/libGLEW${LIBEXT}
-	-DGLFW_INCLUDE_DIR=${LIBDIR}/glfw/include
-	-DGLFW_LIBRARIES=${LIBDIR}/glfw/lib/glfw3${LIBEXT}
+  -DNO_EXAMPLES=ON
+  -DNO_REGRESSION=ON
+  -DNO_PYTHON=ON
+  -DNO_MAYA=ON
+  -DNO_PTEX=ON
+  -DNO_DOC=ON
+  -DNO_CLEW=OFF
+  -DNO_OPENCL=OFF
+  -DNO_TUTORIALS=ON
+  -DGLEW_INCLUDE_DIR=${LIBDIR}/glew/include
+  -DGLEW_LIBRARY=${LIBDIR}/glew/lib/libGLEW${LIBEXT}
+  -DGLFW_INCLUDE_DIR=${LIBDIR}/glfw/include
+  -DGLFW_LIBRARIES=${LIBDIR}/glfw/lib/glfw3${LIBEXT}
 )
 
 if(WIN32)
-	set(OPENSUBDIV_EXTRA_ARGS
-		${OPENSUBDIV_EXTRA_ARGS}
-		-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
-		-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb_static.lib
-		-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
-		-DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
-		-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
-		-DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
-		-DCMAKE_EXE_LINKER_FLAGS_RELEASE=libcmt.lib
-	)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(OPENSUBDIV_EXTRA_ARGS
-			${OPENSUBDIV_EXTRA_ARGS}
-			-DNO_CUDA=OFF
-		)
-	else()
-		set(OPENSUBDIV_EXTRA_ARGS
-			${OPENSUBDIV_EXTRA_ARGS}
-			-DNO_CUDA=ON
-		)
-	endif()
+  set(OPENSUBDIV_EXTRA_ARGS
+    ${OPENSUBDIV_EXTRA_ARGS}
+    -DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
+    -DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb_static.lib
+    -DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
+    -DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
+    -DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
+    -DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
+    -DCMAKE_EXE_LINKER_FLAGS_RELEASE=libcmt.lib
+  )
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(OPENSUBDIV_EXTRA_ARGS
+      ${OPENSUBDIV_EXTRA_ARGS}
+      -DNO_CUDA=OFF
+    )
+  else()
+    set(OPENSUBDIV_EXTRA_ARGS
+      ${OPENSUBDIV_EXTRA_ARGS}
+      -DNO_CUDA=ON
+    )
+  endif()
 
 else()
-	set(OPENSUBDIV_EXTRA_ARGS
-		${OPENSUBDIV_EXTRA_ARGS}
-		-DNO_CUDA=ON
-		-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
-		-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
-		-DCLEW_LIBRARY=${LIBDIR}/clew/lib/static/${LIBPREFIX}clew${LIBEXT}
-	)
+  set(OPENSUBDIV_EXTRA_ARGS
+    ${OPENSUBDIV_EXTRA_ARGS}
+    -DNO_CUDA=ON
+    -DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
+    -DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
+    -DCLEW_LIBRARY=${LIBDIR}/clew/lib/static/${LIBPREFIX}clew${LIBEXT}
+  )
 endif()
 
 ExternalProject_Add(external_opensubdiv
-	URL ${OPENSUBDIV_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENSUBDIV_Hash}
-	PREFIX ${BUILD_DIR}/opensubdiv
-	PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/opensubdiv/src/external_opensubdiv < ${PATCH_DIR}/opensubdiv.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opensubdiv -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${OPENSUBDIV_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/opensubdiv
+  URL ${OPENSUBDIV_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENSUBDIV_Hash}
+  PREFIX ${BUILD_DIR}/opensubdiv
+  PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/opensubdiv/src/external_opensubdiv < ${PATCH_DIR}/opensubdiv.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/opensubdiv -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${OPENSUBDIV_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/opensubdiv
 )
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_opensubdiv after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/lib ${HARVEST_TARGET}/opensubdiv/lib
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/include ${HARVEST_TARGET}/opensubdiv/include
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_opensubdiv after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdCPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdCPU_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdGPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdGPU_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_opensubdiv after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/lib ${HARVEST_TARGET}/opensubdiv/lib
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opensubdiv/include ${HARVEST_TARGET}/opensubdiv/include
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_opensubdiv after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdCPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdCPU_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opensubdiv/lib/osdGPU.lib ${HARVEST_TARGET}/opensubdiv/lib/osdGPU_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
 
 add_dependencies(
-	external_opensubdiv
-	external_glew
-	external_glfw
-	external_clew
-	external_cuew
-	external_tbb
+  external_opensubdiv
+  external_glew
+  external_glfw
+  external_clew
+  external_cuew
+  external_tbb
 )
diff --git a/build_files/build_environment/cmake/openvdb.cmake b/build_files/build_environment/cmake/openvdb.cmake
index 11456facbb2ca8a9032c3d6c9c84bc24d8eb9874..215b3e8f2fe16ece80e15d7d795a577530532e8c 100644
--- a/build_files/build_environment/cmake/openvdb.cmake
+++ b/build_files/build_environment/cmake/openvdb.cmake
@@ -17,86 +17,86 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(BUILD_MODE STREQUAL Debug)
-	set(BLOSC_POST _d)
+  set(BLOSC_POST _d)
 endif()
 
 set(OPENVDB_EXTRA_ARGS
-	-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
-	-DBoost_USE_MULTITHREADED=ON
-	-DBoost_USE_STATIC_LIBS=ON
-	-DBoost_USE_STATIC_RUNTIME=ON
-	-DBOOST_ROOT=${LIBDIR}/boost
-	-DBoost_NO_SYSTEM_PATHS=ON
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-	-DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/
-	-DBLOSC_blosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
-	-DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF
-	-DOPENVDB_BUILD_UNITTESTS=Off
-	-DOPENVDB_BUILD_PYTHON_MODULE=Off
-	-DGLEW_LOCATION=${LIBDIR}/glew/
-	-DBLOSC_LOCATION=${LIBDIR}/blosc/
-	-DTBB_LOCATION=${LIBDIR}/tbb/
-	-DTBB_ROOT=${LIBDIR}/tbb/
-	-DOPENEXR_LOCATION=${LIBDIR}/openexr
-	-DILMBASE_LOCATION=${LIBDIR}/ilmbase
-	-DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
-	-DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib
-	-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
-	-DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib
+  -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
+  -DBoost_USE_MULTITHREADED=ON
+  -DBoost_USE_STATIC_LIBS=ON
+  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBOOST_ROOT=${LIBDIR}/boost
+  -DBoost_NO_SYSTEM_PATHS=ON
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+  -DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/
+  -DBLOSC_blosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
+  -DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF
+  -DOPENVDB_BUILD_UNITTESTS=Off
+  -DOPENVDB_BUILD_PYTHON_MODULE=Off
+  -DGLEW_LOCATION=${LIBDIR}/glew/
+  -DBLOSC_LOCATION=${LIBDIR}/blosc/
+  -DTBB_LOCATION=${LIBDIR}/tbb/
+  -DTBB_ROOT=${LIBDIR}/tbb/
+  -DOPENEXR_LOCATION=${LIBDIR}/openexr
+  -DILMBASE_LOCATION=${LIBDIR}/ilmbase
+  -DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
+  -DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib
+  -DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
+  -DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib
 )
 
 if(WIN32)
-	# Namespaces seem to be buggy and cause linker errors due to things not
-	# being in the correct namespace
-	# needs to link pthreads due to it being a blosc dependency
-	set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
-		-DOPENEXR_NAMESPACE_VERSIONING=OFF
-		-DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC3.lib
-	)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
-		set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
-			-DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no"
-			-DCMAKE_EXE_LINKER_FLAGS="/safeseh:no"
-		)
-	endif()
+  # Namespaces seem to be buggy and cause linker errors due to things not
+  # being in the correct namespace
+  # needs to link pthreads due to it being a blosc dependency
+  set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
+    -DOPENEXR_NAMESPACE_VERSIONING=OFF
+    -DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC3.lib
+  )
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+    set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
+      -DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no"
+      -DCMAKE_EXE_LINKER_FLAGS="/safeseh:no"
+    )
+  endif()
 endif()
 
 ExternalProject_Add(openvdb
-	URL ${OPENVDB_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${OPENVDB_HASH}
-	PREFIX ${BUILD_DIR}/openvdb
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openvdb ${DEFAULT_CMAKE_FLAGS} ${OPENVDB_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/openvdb
+  URL ${OPENVDB_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${OPENVDB_HASH}
+  PREFIX ${BUILD_DIR}/openvdb
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openvdb ${DEFAULT_CMAKE_FLAGS} ${OPENVDB_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/openvdb
 )
 
 add_dependencies(
-	openvdb
-	external_tbb
-	external_boost
-	external_ilmbase
-	external_openexr
-	external_zlib
-	external_blosc
+  openvdb
+  external_tbb
+  external_boost
+  external_ilmbase
+  external_openexr
+  external_zlib
+  external_blosc
 )
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(openvdb after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(openvdb after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(openvdb after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(openvdb after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/options.cmake b/build_files/build_environment/cmake/options.cmake
index ac36c89197628e16ae193e90dd131201eee3ca00..d7acf25ba5891b305b3c46aba856bde1825dff67 100644
--- a/build_files/build_environment/cmake/options.cmake
+++ b/build_files/build_environment/cmake/options.cmake
@@ -17,22 +17,22 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/lapack/fftw3 by installing mingw64" ON)
+  option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/lapack/fftw3 by installing mingw64" ON)
 endif()
 option(WITH_WEBP "Enable building of oiio with webp support" OFF)
 option(WITH_EMBREE "Enable building of Embree" OFF)
 set(MAKE_THREADS 1 CACHE STRING "Number of threads to run make with")
 
 if(NOT BUILD_MODE)
-	set(BUILD_MODE "Release")
-	message(STATUS "Build type not specified: defaulting to a release build.")
+  set(BUILD_MODE "Release")
+  message(STATUS "Build type not specified: defaulting to a release build.")
 endif()
 message("BuildMode = ${BUILD_MODE}")
 
 if(BUILD_MODE STREQUAL "Debug")
-	set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Debug)
+  set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Debug)
 else(BUILD_MODE STREQUAL "Debug")
-	set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Release)
+  set(LIBDIR ${CMAKE_CURRENT_BINARY_DIR}/Release)
 endif()
 
 option(DOWNLOAD_DIR "Path for downloaded files" ${CMAKE_CURRENT_SOURCE_DIR}/downloads)
@@ -46,173 +46,173 @@ message("PATCH_DIR = ${PATCH_DIR}")
 message("BUILD_DIR = ${BUILD_DIR}")
 
 if(WIN32)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
-	else()
-		set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/patch.exe)
-	endif()
-	set(LIBEXT ".lib")
-	set(LIBPREFIX "")
-
-	# For OIIO and OSL
-	set(COMMON_DEFINES /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
-
-	if(MSVC_VERSION GREATER 1909)
-		set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
-	endif()
-	set(COMMON_MSVC_FLAGS "${COMMON_MSVC_FLAGS} /bigobj")
-	if(WITH_OPTIMIZED_DEBUG)
-		set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	else()
-		set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	endif()
-	set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MT ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-
-	if(WITH_OPTIMIZED_DEBUG)
-		set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	else()
-		set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd  ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	endif()
-	set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MT /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG  /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-	set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-
-	set(PLATFORM_FLAGS)
-	set(PLATFORM_CXX_FLAGS)
-	set(PLATFORM_CMAKE_FLAGS)
-
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
-		set(MINGW_SHELL ming64sh.cmd)
-		set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
-		set(MINGW_HOST x86_64-w64-mingw32)
-	else()
-		set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw32)
-		set(MINGW_SHELL ming32sh.cmd)
-		set(PERL_SHELL ${DOWNLOAD_DIR}/perl32/portableshell.bat)
-		set(MINGW_HOST i686-w64-mingw32)
-	endif()
-
-	set(CONFIGURE_ENV
-		cd ${MINGW_PATH} &&
-		call ${MINGW_SHELL} &&
-		call ${PERL_SHELL} &&
-		set path &&
-		set CFLAGS=-g &&
-		set LDFLAGS=-Wl,--as-needed -static-libgcc
-	)
-
-	set(CONFIGURE_ENV_NO_PERL
-		cd ${MINGW_PATH} &&
-		call ${MINGW_SHELL} &&
-		set path &&
-		set CFLAGS=-g &&
-		set LDFLAGS=-Wl,--as-needed -static-libgcc
-	)
-
-	set(CONFIGURE_COMMAND sh ./configure)
-	set(CONFIGURE_COMMAND_NO_TARGET ${CONFIGURE_COMMAND})
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
+  else()
+    set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/patch.exe)
+  endif()
+  set(LIBEXT ".lib")
+  set(LIBPREFIX "")
+
+  # For OIIO and OSL
+  set(COMMON_DEFINES /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
+
+  if(MSVC_VERSION GREATER 1909)
+    set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
+  endif()
+  set(COMMON_MSVC_FLAGS "${COMMON_MSVC_FLAGS} /bigobj")
+  if(WITH_OPTIMIZED_DEBUG)
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  else()
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  endif()
+  set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MT ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+
+  if(WITH_OPTIMIZED_DEBUG)
+    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  else()
+    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd  ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  endif()
+  set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MT /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG  /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+
+  set(PLATFORM_FLAGS)
+  set(PLATFORM_CXX_FLAGS)
+  set(PLATFORM_CMAKE_FLAGS)
+
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw64)
+    set(MINGW_SHELL ming64sh.cmd)
+    set(PERL_SHELL ${DOWNLOAD_DIR}/perl/portableshell.bat)
+    set(MINGW_HOST x86_64-w64-mingw32)
+  else()
+    set(MINGW_PATH ${DOWNLOAD_DIR}/mingw/mingw32)
+    set(MINGW_SHELL ming32sh.cmd)
+    set(PERL_SHELL ${DOWNLOAD_DIR}/perl32/portableshell.bat)
+    set(MINGW_HOST i686-w64-mingw32)
+  endif()
+
+  set(CONFIGURE_ENV
+    cd ${MINGW_PATH} &&
+    call ${MINGW_SHELL} &&
+    call ${PERL_SHELL} &&
+    set path &&
+    set CFLAGS=-g &&
+    set LDFLAGS=-Wl,--as-needed -static-libgcc
+  )
+
+  set(CONFIGURE_ENV_NO_PERL
+    cd ${MINGW_PATH} &&
+    call ${MINGW_SHELL} &&
+    set path &&
+    set CFLAGS=-g &&
+    set LDFLAGS=-Wl,--as-needed -static-libgcc
+  )
+
+  set(CONFIGURE_COMMAND sh ./configure)
+  set(CONFIGURE_COMMAND_NO_TARGET ${CONFIGURE_COMMAND})
 else()
-	set(PATCH_CMD patch)
-	set(LIBEXT ".a")
-	set(LIBPREFIX "lib")
-
-	if(APPLE)
-		# Let's get the current Xcode dir, to support xcode-select
-		execute_process(
-			COMMAND xcode-select --print-path
-			OUTPUT_VARIABLE XCODE_DEV_PATH OUTPUT_STRIP_TRAILING_WHITESPACE
-		)
-		set(OSX_ARCHITECTURES x86_64)
-		set(OSX_DEPLOYMENT_TARGET 10.9)
-		set(OSX_SYSROOT ${XCODE_DEV_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk)
-
-		set(PLATFORM_CFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
-		set(PLATFORM_CXXFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET} -std=c++11 -stdlib=libc++")
-		set(PLATFORM_LDFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
-		set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin13.0.0) # OS X 10.9
-		set(PLATFORM_CMAKE_FLAGS
-			-DCMAKE_OSX_ARCHITECTURES:STRING=${OSX_ARCHITECTURES}
-			-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${OSX_DEPLOYMENT_TARGET}
-			-DCMAKE_OSX_SYSROOT:PATH=${OSX_SYSROOT}
-		)
-	else()
-		set(PLATFORM_CFLAGS "-fPIC")
-		set(PLATFORM_CXXFLAGS "-std=c++11 -fPIC")
-		set(PLATFORM_LDFLAGS)
-		set(PLATFORM_BUILD_TARGET)
-		set(PLATFORM_CMAKE_FLAGS -DCMAKE_INSTALL_LIBDIR=lib)
-	endif()
-
-	if(WITH_OPTIMIZED_DEBUG)
-		set(BLENDER_CMAKE_C_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
-	else()
-		set(BLENDER_CMAKE_C_FLAGS_DEBUG "-g ${PLATFORM_CFLAGS}")
-	endif()
-	set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CFLAGS}")
-	set(BLENDER_CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
-	set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CFLAGS}")
-
-	if(WITH_OPTIMIZED_DEBUG)
-		set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
-	else()
-		set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-g ${PLATFORM_CXXFLAGS}")
-	endif()
-
-	set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CXXFLAGS}")
-	set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
-	set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CXXFLAGS}")
-
-	set(CONFIGURE_ENV
-		export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
-		export CFLAGS=${PLATFORM_CFLAGS} &&
-		export CXXFLAGS=${PLATFORM_CXXFLAGS} &&
-		export LDFLAGS=${PLATFORM_LDFLAGS}
-	)
-	set(CONFIGURE_ENV_NO_PERL ${CONFIGURE_ENV})
-	set(CONFIGURE_COMMAND ./configure ${PLATFORM_BUILD_TARGET})
-	set(CONFIGURE_COMMAND_NO_TARGET ./configure)
+  set(PATCH_CMD patch)
+  set(LIBEXT ".a")
+  set(LIBPREFIX "lib")
+
+  if(APPLE)
+    # Let's get the current Xcode dir, to support xcode-select
+    execute_process(
+      COMMAND xcode-select --print-path
+      OUTPUT_VARIABLE XCODE_DEV_PATH OUTPUT_STRIP_TRAILING_WHITESPACE
+    )
+    set(OSX_ARCHITECTURES x86_64)
+    set(OSX_DEPLOYMENT_TARGET 10.9)
+    set(OSX_SYSROOT ${XCODE_DEV_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk)
+
+    set(PLATFORM_CFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
+    set(PLATFORM_CXXFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET} -std=c++11 -stdlib=libc++")
+    set(PLATFORM_LDFLAGS "-isysroot ${OSX_SYSROOT} -mmacosx-version-min=${OSX_DEPLOYMENT_TARGET}")
+    set(PLATFORM_BUILD_TARGET --build=x86_64-apple-darwin13.0.0) # OS X 10.9
+    set(PLATFORM_CMAKE_FLAGS
+      -DCMAKE_OSX_ARCHITECTURES:STRING=${OSX_ARCHITECTURES}
+      -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${OSX_DEPLOYMENT_TARGET}
+      -DCMAKE_OSX_SYSROOT:PATH=${OSX_SYSROOT}
+    )
+  else()
+    set(PLATFORM_CFLAGS "-fPIC")
+    set(PLATFORM_CXXFLAGS "-std=c++11 -fPIC")
+    set(PLATFORM_LDFLAGS)
+    set(PLATFORM_BUILD_TARGET)
+    set(PLATFORM_CMAKE_FLAGS -DCMAKE_INSTALL_LIBDIR=lib)
+  endif()
+
+  if(WITH_OPTIMIZED_DEBUG)
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
+  else()
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "-g ${PLATFORM_CFLAGS}")
+  endif()
+  set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CFLAGS}")
+  set(BLENDER_CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CFLAGS}")
+  set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CFLAGS}")
+
+  if(WITH_OPTIMIZED_DEBUG)
+    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
+  else()
+    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "-g ${PLATFORM_CXXFLAGS}")
+  endif()
+
+  set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG ${PLATFORM_CXXFLAGS}")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${PLATFORM_CXXFLAGS}")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${PLATFORM_CXXFLAGS}")
+
+  set(CONFIGURE_ENV
+    export MACOSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET} &&
+    export CFLAGS=${PLATFORM_CFLAGS} &&
+    export CXXFLAGS=${PLATFORM_CXXFLAGS} &&
+    export LDFLAGS=${PLATFORM_LDFLAGS}
+  )
+  set(CONFIGURE_ENV_NO_PERL ${CONFIGURE_ENV})
+  set(CONFIGURE_COMMAND ./configure ${PLATFORM_BUILD_TARGET})
+  set(CONFIGURE_COMMAND_NO_TARGET ./configure)
 endif()
 
 set(DEFAULT_CMAKE_FLAGS
-	-DCMAKE_BUILD_TYPE=${BUILD_MODE}
-	-DCMAKE_C_FLAGS_DEBUG=${BLENDER_CMAKE_C_FLAGS_DEBUG}
-	-DCMAKE_C_FLAGS_MINSIZEREL=${BLENDER_CMAKE_C_FLAGS_MINSIZEREL}
-	-DCMAKE_C_FLAGS_RELEASE=${BLENDER_CMAKE_C_FLAGS_RELEASE}
-	-DCMAKE_C_FLAGS_RELWITHDEBINFO=${BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO}
-	-DCMAKE_CXX_FLAGS_DEBUG=${BLENDER_CMAKE_CXX_FLAGS_DEBUG}
-	-DCMAKE_CXX_FLAGS_MINSIZEREL=${BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL}
-	-DCMAKE_CXX_FLAGS_RELEASE=${BLENDER_CMAKE_CXX_FLAGS_RELEASE}
-	-DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO}
-	${PLATFORM_CMAKE_FLAGS}
+  -DCMAKE_BUILD_TYPE=${BUILD_MODE}
+  -DCMAKE_C_FLAGS_DEBUG=${BLENDER_CMAKE_C_FLAGS_DEBUG}
+  -DCMAKE_C_FLAGS_MINSIZEREL=${BLENDER_CMAKE_C_FLAGS_MINSIZEREL}
+  -DCMAKE_C_FLAGS_RELEASE=${BLENDER_CMAKE_C_FLAGS_RELEASE}
+  -DCMAKE_C_FLAGS_RELWITHDEBINFO=${BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO}
+  -DCMAKE_CXX_FLAGS_DEBUG=${BLENDER_CMAKE_CXX_FLAGS_DEBUG}
+  -DCMAKE_CXX_FLAGS_MINSIZEREL=${BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL}
+  -DCMAKE_CXX_FLAGS_RELEASE=${BLENDER_CMAKE_CXX_FLAGS_RELEASE}
+  -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO}
+  ${PLATFORM_CMAKE_FLAGS}
 )
 
 if(WIN32)
-	#we need both flavors to build the thumbnail dlls
-	if(MSVC12)
-		set(GENERATOR_32 "Visual Studio 12 2013")
-		set(GENERATOR_64 "Visual Studio 12 2013 Win64")
-	elseif(MSVC14)
-		set(GENERATOR_32 "Visual Studio 14 2015")
-		set(GENERATOR_64 "Visual Studio 14 2015 Win64")
-	endif()
+  #we need both flavors to build the thumbnail dlls
+  if(MSVC12)
+    set(GENERATOR_32 "Visual Studio 12 2013")
+    set(GENERATOR_64 "Visual Studio 12 2013 Win64")
+  elseif(MSVC14)
+    set(GENERATOR_32 "Visual Studio 14 2015")
+    set(GENERATOR_64 "Visual Studio 14 2015 Win64")
+  endif()
 endif()
 
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Debug)
-		set(ZLIB_LIBRARY zlibstaticd${LIBEXT})
-	else()
-		set(ZLIB_LIBRARY zlibstatic${LIBEXT})
-	endif()
+  if(BUILD_MODE STREQUAL Debug)
+    set(ZLIB_LIBRARY zlibstaticd${LIBEXT})
+  else()
+    set(ZLIB_LIBRARY zlibstatic${LIBEXT})
+  endif()
 else()
-	set(ZLIB_LIBRARY libz${LIBEXT})
+  set(ZLIB_LIBRARY libz${LIBEXT})
 endif()
 
 if(MSVC)
-	set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+  set_property(GLOBAL PROPERTY USE_FOLDERS ON)
 endif()
 
 set(CMAKE_INSTALL_MESSAGE LAZY)
diff --git a/build_files/build_environment/cmake/osl.cmake b/build_files/build_environment/cmake/osl.cmake
index 795892f29e2d4dd5a6b91c2098bcd448ed1754e6..7479a0f1efbccd1110275c62d5efba8ea21e5776 100644
--- a/build_files/build_environment/cmake/osl.cmake
+++ b/build_files/build_environment/cmake/osl.cmake
@@ -17,116 +17,116 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
-	set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DFLEX_EXTRA_OPTIONS="--wincompat" -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
-	set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/libpng16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
-		set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=0)
-	else()
-		set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=sse2)
-	endif()
-	SET(OSL_PLATFORM_FLAGS -DLINKSTATIC=ON)
+  set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
+  set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DFLEX_EXTRA_OPTIONS="--wincompat" -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
+  set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/libpng16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+    set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=0)
+  else()
+    set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=sse2)
+  endif()
+  SET(OSL_PLATFORM_FLAGS -DLINKSTATIC=ON)
 else()
-	set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
-	set(OSL_FLEX_BISON)
-	set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
-	SET(OSL_PLATFORM_FLAGS)
+  set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
+  set(OSL_FLEX_BISON)
+  set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
+  SET(OSL_PLATFORM_FLAGS)
 endif()
 
 set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/ilmbase/lib/Imath${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Half{ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/IlmThread${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Iex${ILMBASE_VERSION_POSTFIX}.lib")
 set(OSL_LLVM_LIBRARY "${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAnalysis${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitReader${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitWriter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCore${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMDebugInfo${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMExecutionEngine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstCombine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstrumentation${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInterpreter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMLinker${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMC${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCDisassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMObject${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMRuntimeDyld${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMScalarOpts${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSelectionDAG${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSupport${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTableGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTarget${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTransformUtils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMVectorize${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86CodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Desc${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Disassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Info${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Utils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipa${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipo${LIBEXT}")
 
 set(OSL_EXTRA_ARGS
-	-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
-	-DBoost_USE_MULTITHREADED=ON
-	-DBoost_USE_STATIC_LIBS=ON
-	-DBoost_USE_STATIC_RUNTIME=ON
-	-DBOOST_ROOT=${LIBDIR}/boost
-	-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
-	-DBoost_NO_SYSTEM_PATHS=ON
-	-DLLVM_DIRECTORY=${LIBDIR}/llvm
-	-DLLVM_INCLUDES=${LIBDIR}/llvm/include
-	-DLLVM_LIB_DIR=${LIBDIR}/llvm/lib
-	-DLLVM_VERSION=3.4
-	-DLLVM_LIBRARY=${OSL_LLVM_LIBRARY}
-	-DOPENEXR_HOME=${LIBDIR}/openexr/
-	-DILMBASE_HOME=${LIBDIR}/ilmbase/
-	-DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
-	-DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
-	-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
-	-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
-	-DOSL_BUILD_TESTS=OFF
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-	-DOPENIMAGEIOHOME=${LIBDIR}/openimageio/
-	-DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
-	-DOPENIMAGEIO_INCLUDES=${LIBDIR}/openimageio/include
-	${OSL_FLEX_BISON}
-	-DCMAKE_CXX_STANDARD_LIBRARIES=${OSL_CMAKE_CXX_STANDARD_LIBRARIES}
-	-DBUILDSTATIC=ON
-	${OSL_PLATFORM_FLAGS}
-	-DOSL_BUILD_PLUGINS=Off
-	-DSTOP_ON_WARNING=OFF
-	-DUSE_LLVM_BITCODE=OFF
-	-DUSE_PARTIO=OFF
-	${OSL_SIMD_FLAGS}
-	-DPARTIO_LIBRARIES=
+  -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
+  -DBoost_USE_MULTITHREADED=ON
+  -DBoost_USE_STATIC_LIBS=ON
+  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBOOST_ROOT=${LIBDIR}/boost
+  -DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
+  -DBoost_NO_SYSTEM_PATHS=ON
+  -DLLVM_DIRECTORY=${LIBDIR}/llvm
+  -DLLVM_INCLUDES=${LIBDIR}/llvm/include
+  -DLLVM_LIB_DIR=${LIBDIR}/llvm/lib
+  -DLLVM_VERSION=3.4
+  -DLLVM_LIBRARY=${OSL_LLVM_LIBRARY}
+  -DOPENEXR_HOME=${LIBDIR}/openexr/
+  -DILMBASE_HOME=${LIBDIR}/ilmbase/
+  -DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/
+  -DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT}
+  -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
+  -DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
+  -DOSL_BUILD_TESTS=OFF
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+  -DOPENIMAGEIOHOME=${LIBDIR}/openimageio/
+  -DOPENIMAGEIO_LIBRARY=${OSL_OPENIMAGEIO_LIBRARY}
+  -DOPENIMAGEIO_INCLUDES=${LIBDIR}/openimageio/include
+  ${OSL_FLEX_BISON}
+  -DCMAKE_CXX_STANDARD_LIBRARIES=${OSL_CMAKE_CXX_STANDARD_LIBRARIES}
+  -DBUILDSTATIC=ON
+  ${OSL_PLATFORM_FLAGS}
+  -DOSL_BUILD_PLUGINS=Off
+  -DSTOP_ON_WARNING=OFF
+  -DUSE_LLVM_BITCODE=OFF
+  -DUSE_PARTIO=OFF
+  ${OSL_SIMD_FLAGS}
+  -DPARTIO_LIBRARIES=
 )
 
 if(WIN32)
-	set(OSL_EXTRA_ARGS
-		${OSL_EXTRA_ARGS}
-		-DPUGIXML_HOME=${LIBDIR}/pugixml
-	)
+  set(OSL_EXTRA_ARGS
+    ${OSL_EXTRA_ARGS}
+    -DPUGIXML_HOME=${LIBDIR}/pugixml
+  )
 elseif(APPLE)
-	# Make symbol hiding consistent with OIIO which defaults to OFF,
-	# avoids linker warnings on macOS
-	set(OSL_EXTRA_ARGS
-		${OSL_EXTRA_ARGS}
-		-DHIDE_SYMBOLS=OFF
-	)
+  # Make symbol hiding consistent with OIIO which defaults to OFF,
+  # avoids linker warnings on macOS
+  set(OSL_EXTRA_ARGS
+    ${OSL_EXTRA_ARGS}
+    -DHIDE_SYMBOLS=OFF
+  )
 endif()
 
 ExternalProject_Add(external_osl
-	URL ${OSL_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	LIST_SEPARATOR ^^
-	URL_HASH MD5=${OSL_HASH}
-	PREFIX ${BUILD_DIR}/osl
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/osl -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ${DEFAULT_CMAKE_FLAGS} ${OSL_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/osl
+  URL ${OSL_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  LIST_SEPARATOR ^^
+  URL_HASH MD5=${OSL_HASH}
+  PREFIX ${BUILD_DIR}/osl
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/osl/src/external_osl < ${PATCH_DIR}/osl.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/osl -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ${DEFAULT_CMAKE_FLAGS} ${OSL_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/osl
 )
 
 add_dependencies(
-	external_osl
-	external_boost
-	ll
-	external_clang
-	external_ilmbase
-	external_openexr
-	external_zlib
-	external_flexbison
-	external_openimageio
-	external_pugixml
+  external_osl
+  external_boost
+  ll
+  external_clang
+  external_ilmbase
+  external_openexr
+  external_zlib
+  external_flexbison
+  external_openimageio
+  external_pugixml
 )
 
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_osl after_install
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/osl/ ${HARVEST_TARGET}/osl
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_osl after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslcomp.lib ${HARVEST_TARGET}/osl/lib/oslcomp_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslexec.lib ${HARVEST_TARGET}/osl/lib/oslexec_d.lib
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslquery.lib ${HARVEST_TARGET}/osl/lib/oslquery_d.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_osl after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/osl/ ${HARVEST_TARGET}/osl
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_osl after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslcomp.lib ${HARVEST_TARGET}/osl/lib/oslcomp_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslexec.lib ${HARVEST_TARGET}/osl/lib/oslexec_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/osl/lib/oslquery.lib ${HARVEST_TARGET}/osl/lib/oslquery_d.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/png.cmake b/build_files/build_environment/cmake/png.cmake
index 6e51fb9ebe4ad7ef94f55f2b3990edcf63b68c63..2bf32b77ce9b16d9a5405599315ef194b6641878 100644
--- a/build_files/build_environment/cmake/png.cmake
+++ b/build_files/build_environment/cmake/png.cmake
@@ -17,28 +17,28 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(PNG_EXTRA_ARGS
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
-	-DPNG_STATIC=ON
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
+  -DPNG_STATIC=ON
 )
 
 ExternalProject_Add(external_png
-	URL ${PNG_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${PNG_HASH}
-	PREFIX ${BUILD_DIR}/png
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/png ${DEFAULT_CMAKE_FLAGS} ${PNG_EXTRA_ARGS}
-	INSTALL_DIR	${LIBDIR}/png
+  URL ${PNG_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${PNG_HASH}
+  PREFIX ${BUILD_DIR}/png
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/png ${DEFAULT_CMAKE_FLAGS} ${PNG_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/png
 )
 
 add_dependencies(
-	external_png
-	external_zlib
+  external_png
+  external_zlib
 )
 
 if(WIN32 AND BUILD_MODE STREQUAL Debug)
-	ExternalProject_Add_Step(external_png after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_staticd${LIBEXT} ${LIBDIR}/png/lib/libpng16${LIBEXT}
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_png after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_staticd${LIBEXT} ${LIBDIR}/png/lib/libpng16${LIBEXT}
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/pthreads.cmake b/build_files/build_environment/cmake/pthreads.cmake
index 8d605973fa54a91e07770f0dc679d1f3e6575635..c5c331117fc82f440f77eb936dc530506a91fd9c 100644
--- a/build_files/build_environment/cmake/pthreads.cmake
+++ b/build_files/build_environment/cmake/pthreads.cmake
@@ -18,36 +18,36 @@
 
 if(WIN32)
 
-		if(MSVC14) # vs2015 has timespec
-			set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H /D_TIMESPEC_DEFINED ")
-		else() # everything before doesn't
-			set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H ")
-		endif()
+    if(MSVC14) # vs2015 has timespec
+      set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H /D_TIMESPEC_DEFINED ")
+    else() # everything before doesn't
+      set(PTHREAD_CPPFLAGS "/I. /DHAVE_CONFIG_H ")
+    endif()
 
-		set(PTHREADS_BUILD cd ${BUILD_DIR}/pthreads/src/external_pthreads/ && cd && nmake VC-static /e CPPFLAGS=${PTHREAD_CPPFLAGS} /e XLIBS=/NODEFAULTLIB:msvcr)
+    set(PTHREADS_BUILD cd ${BUILD_DIR}/pthreads/src/external_pthreads/ && cd && nmake VC-static /e CPPFLAGS=${PTHREAD_CPPFLAGS} /e XLIBS=/NODEFAULTLIB:msvcr)
 
-		ExternalProject_Add(external_pthreads
-			URL ${PTHREADS_URI}
-			DOWNLOAD_DIR ${DOWNLOAD_DIR}
-			URL_HASH MD5=${PTHREADS_HASH}
-			PREFIX ${BUILD_DIR}/pthreads
-			CONFIGURE_COMMAND echo .
-			BUILD_COMMAND ${PTHREADS_BUILD}
-			INSTALL_COMMAND COMMAND
-				${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/libpthreadVC3${LIBEXT} ${LIBDIR}/pthreads/lib/pthreadVC3${LIBEXT} &&
-				${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/pthread.h ${LIBDIR}/pthreads/inc/pthread.h &&
-				${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/sched.h ${LIBDIR}/pthreads/inc/sched.h &&
-				${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/semaphore.h ${LIBDIR}/pthreads/inc/semaphore.h &&
-				${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/_ptw32.h ${LIBDIR}/pthreads/inc/_ptw32.h
-			INSTALL_DIR ${LIBDIR}/pthreads
-		)
+    ExternalProject_Add(external_pthreads
+      URL ${PTHREADS_URI}
+      DOWNLOAD_DIR ${DOWNLOAD_DIR}
+      URL_HASH MD5=${PTHREADS_HASH}
+      PREFIX ${BUILD_DIR}/pthreads
+      CONFIGURE_COMMAND echo .
+      BUILD_COMMAND ${PTHREADS_BUILD}
+      INSTALL_COMMAND COMMAND
+        ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/libpthreadVC3${LIBEXT} ${LIBDIR}/pthreads/lib/pthreadVC3${LIBEXT} &&
+        ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/pthread.h ${LIBDIR}/pthreads/inc/pthread.h &&
+        ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/sched.h ${LIBDIR}/pthreads/inc/sched.h &&
+        ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/semaphore.h ${LIBDIR}/pthreads/inc/semaphore.h &&
+        ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/pthreads/src/external_pthreads/_ptw32.h ${LIBDIR}/pthreads/inc/_ptw32.h
+      INSTALL_DIR ${LIBDIR}/pthreads
+    )
 
-		if(BUILD_MODE STREQUAL Release)
-			ExternalProject_Add_Step(external_pthreads after_install
-				COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/inc/ ${HARVEST_TARGET}/pthreads/include/
-				COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/lib/ ${HARVEST_TARGET}/pthreads/lib
-				DEPENDEES install
-			)
-		endif()
+    if(BUILD_MODE STREQUAL Release)
+      ExternalProject_Add_Step(external_pthreads after_install
+        COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/inc/ ${HARVEST_TARGET}/pthreads/include/
+        COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pthreads/lib/ ${HARVEST_TARGET}/pthreads/lib
+        DEPENDEES install
+      )
+    endif()
 
 endif()
diff --git a/build_files/build_environment/cmake/pugixml.cmake b/build_files/build_environment/cmake/pugixml.cmake
index fe5a77efa33d8fa8edf3c8b1ede857fb1fcaf5ec..8804ae74836678da87514b33920fcce05896cc15 100644
--- a/build_files/build_environment/cmake/pugixml.cmake
+++ b/build_files/build_environment/cmake/pugixml.cmake
@@ -20,24 +20,24 @@ set(PUGIXML_EXTRA_ARGS
 )
 
 ExternalProject_Add(external_pugixml
-	URL ${PUGIXML_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${PUGIXML_HASH}
-	PREFIX ${BUILD_DIR}/pugixml
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/pugixml ${DEFAULT_CMAKE_FLAGS} ${PUGIXML_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/pugixml
+  URL ${PUGIXML_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${PUGIXML_HASH}
+  PREFIX ${BUILD_DIR}/pugixml
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/pugixml ${DEFAULT_CMAKE_FLAGS} ${PUGIXML_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/pugixml
 )
 if(WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_pugixml after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml.lib
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_pugixml after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml_d.lib
-			DEPENDEES install
-		)
-	endif()	
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_pugixml after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml.lib
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_pugixml after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pugixml/lib/pugixml.lib ${HARVEST_TARGET}/osl/lib/pugixml_d.lib
+      DEPENDEES install
+    )
+  endif() 
 endif()
\ No newline at end of file
diff --git a/build_files/build_environment/cmake/python.cmake b/build_files/build_environment/cmake/python.cmake
index 29eb99288e97b97a299edef3f5aee179999380c5..cb3aefa3a9d605e3acb96ac276742e1da6fb1789 100644
--- a/build_files/build_environment/cmake/python.cmake
+++ b/build_files/build_environment/cmake/python.cmake
@@ -18,164 +18,164 @@
 
 set(PYTHON_POSTFIX)
 if(BUILD_MODE STREQUAL Debug)
-	set(PYTHON_POSTFIX _d)
+  set(PYTHON_POSTFIX _d)
 endif()
 
 if(WIN32)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(SSL_POSTFIX -x64)
-	else()
-		set(SSL_POSTFIX)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(SSL_POSTFIX -x64)
+  else()
+    set(SSL_POSTFIX)
+  endif()
 
-	set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe)
+  set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe)
 
-	macro(cmake_to_dos_path MsysPath ResultingPath)
-		string(REPLACE "/" "\\" ${ResultingPath} "${MsysPath}")
-	endmacro()
+  macro(cmake_to_dos_path MsysPath ResultingPath)
+    string(REPLACE "/" "\\" ${ResultingPath} "${MsysPath}")
+  endmacro()
 
-	set(PYTHON_EXTERNALS_FOLDER ${BUILD_DIR}/python/src/external_python/externals)
-	set(DOWNLOADS_EXTERNALS_FOLDER ${DOWNLOAD_DIR}/externals)
+  set(PYTHON_EXTERNALS_FOLDER ${BUILD_DIR}/python/src/external_python/externals)
+  set(DOWNLOADS_EXTERNALS_FOLDER ${DOWNLOAD_DIR}/externals)
 
-	cmake_to_dos_path(${PYTHON_EXTERNALS_FOLDER} PYTHON_EXTERNALS_FOLDER_DOS)
-	cmake_to_dos_path(${DOWNLOADS_EXTERNALS_FOLDER} DOWNLOADS_EXTERNALS_FOLDER_DOS)
+  cmake_to_dos_path(${PYTHON_EXTERNALS_FOLDER} PYTHON_EXTERNALS_FOLDER_DOS)
+  cmake_to_dos_path(${DOWNLOADS_EXTERNALS_FOLDER} DOWNLOADS_EXTERNALS_FOLDER_DOS)
 
-	message("Python externals = ${PYTHON_EXTERNALS_FOLDER}")
-	message("Python externals_dos = ${PYTHON_EXTERNALS_FOLDER_DOS}")
-	message("Python DOWNLOADS_EXTERNALS_FOLDER = ${DOWNLOADS_EXTERNALS_FOLDER}")
-	message("Python DOWNLOADS_EXTERNALS_FOLDER_DOS = ${DOWNLOADS_EXTERNALS_FOLDER_DOS}")
+  message("Python externals = ${PYTHON_EXTERNALS_FOLDER}")
+  message("Python externals_dos = ${PYTHON_EXTERNALS_FOLDER_DOS}")
+  message("Python DOWNLOADS_EXTERNALS_FOLDER = ${DOWNLOADS_EXTERNALS_FOLDER}")
+  message("Python DOWNLOADS_EXTERNALS_FOLDER_DOS = ${DOWNLOADS_EXTERNALS_FOLDER_DOS}")
 
-	ExternalProject_Add(external_python
-		URL ${PYTHON_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${PYTHON_HASH}
-		PREFIX ${BUILD_DIR}/python
-		PATCH_COMMAND
-			echo mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}" &&
-			mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}"
-		CONFIGURE_COMMAND ""
-		BUILD_COMMAND cd ${BUILD_DIR}/python/src/external_python/pcbuild/ && set IncludeTkinter=false && call build.bat -e -p ${PYTHON_ARCH} -c ${BUILD_MODE}
-		INSTALL_COMMAND COMMAND
-			${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll &&
-			${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb &&
-			${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib &&
-			${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp &&
-			${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION} &&
-			${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION}/pyconfig.h
-	)
-	message("PythinRedist = ${BUILD_DIR}/python/src/external_python/redist")
-	message("POutput = ${PYTHON_OUTPUTDIR}")
+  ExternalProject_Add(external_python
+    URL ${PYTHON_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${PYTHON_HASH}
+    PREFIX ${BUILD_DIR}/python
+    PATCH_COMMAND
+      echo mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}" &&
+      mklink /D "${PYTHON_EXTERNALS_FOLDER_DOS}" "${DOWNLOADS_EXTERNALS_FOLDER_DOS}"
+    CONFIGURE_COMMAND ""
+    BUILD_COMMAND cd ${BUILD_DIR}/python/src/external_python/pcbuild/ && set IncludeTkinter=false && call build.bat -e -p ${PYTHON_ARCH} -c ${BUILD_MODE}
+    INSTALL_COMMAND COMMAND
+      ${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll &&
+      ${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.pdb &&
+      ${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib &&
+      ${CMAKE_COMMAND} -E copy ${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.exp &&
+      ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION} &&
+      ${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${LIBDIR}/python/include/Python${PYTHON_SHORT_VERSION}/pyconfig.h
+  )
+  message("PythinRedist = ${BUILD_DIR}/python/src/external_python/redist")
+  message("POutput = ${PYTHON_OUTPUTDIR}")
 else()
-	if(APPLE)
-		# disable functions that can be in 10.13 sdk but aren't available on 10.9 target
-		set(PYTHON_FUNC_CONFIGS
-		  export ac_cv_func_futimens=no &&
-		  export ac_cv_func_utimensat=no &&
-		  export ac_cv_func_basename_r=no &&
-		  export ac_cv_func_clock_getres=no &&
-		  export ac_cv_func_clock_gettime=no &&
-		  export ac_cv_func_clock_settime=no &&
-		  export ac_cv_func_dirname_r=no &&
-		  export ac_cv_func_getentropy=no &&
-		  export ac_cv_func_mkostemp=no &&
-		  export ac_cv_func_mkostemps=no &&
-		  export ac_cv_func_timingsafe_bcmp=no)
-		set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV} && ${PYTHON_FUNC_CONFIGS})
-		set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python.exe)
-	else()
-		set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV})
-		set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python)
-	endif()
+  if(APPLE)
+    # disable functions that can be in 10.13 sdk but aren't available on 10.9 target
+    set(PYTHON_FUNC_CONFIGS
+      export ac_cv_func_futimens=no &&
+      export ac_cv_func_utimensat=no &&
+      export ac_cv_func_basename_r=no &&
+      export ac_cv_func_clock_getres=no &&
+      export ac_cv_func_clock_gettime=no &&
+      export ac_cv_func_clock_settime=no &&
+      export ac_cv_func_dirname_r=no &&
+      export ac_cv_func_getentropy=no &&
+      export ac_cv_func_mkostemp=no &&
+      export ac_cv_func_mkostemps=no &&
+      export ac_cv_func_timingsafe_bcmp=no)
+    set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV} && ${PYTHON_FUNC_CONFIGS})
+    set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python.exe)
+  else()
+    set(PYTHON_CONFIGURE_ENV ${CONFIGURE_ENV})
+    set(PYTHON_BINARY ${BUILD_DIR}/python/src/external_python/python)
+  endif()
 
-	set(PYTHON_CONFIGURE_EXTRA_ARGS "--with-openssl=${LIBDIR}/ssl")
-	set(PYTHON_CFLAGS "-I${LIBDIR}/sqlite/include -I${LIBDIR}/bzip2/include -I${LIBDIR}/lzma/include -I${LIBDIR}/zlib/include")
-	set(PYTHON_LDFLAGS "-L${LIBDIR}/ffi/lib -L${LIBDIR}/sqlite/lib -L${LIBDIR}/bzip2/lib -L${LIBDIR}/lzma/lib -L${LIBDIR}/zlib/lib")
-	set(PYTHON_CONFIGURE_EXTRA_ENV
-		export CFLAGS=${PYTHON_CFLAGS} &&
-		export CPPFLAGS=${PYTHON_CFLAGS} &&
-		export LDFLAGS=${PYTHON_LDFLAGS} &&
-		export PKG_CONFIG_PATH=${LIBDIR}/ffi/lib/pkgconfig)
-	set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_linux.diff)
+  set(PYTHON_CONFIGURE_EXTRA_ARGS "--with-openssl=${LIBDIR}/ssl")
+  set(PYTHON_CFLAGS "-I${LIBDIR}/sqlite/include -I${LIBDIR}/bzip2/include -I${LIBDIR}/lzma/include -I${LIBDIR}/zlib/include")
+  set(PYTHON_LDFLAGS "-L${LIBDIR}/ffi/lib -L${LIBDIR}/sqlite/lib -L${LIBDIR}/bzip2/lib -L${LIBDIR}/lzma/lib -L${LIBDIR}/zlib/lib")
+  set(PYTHON_CONFIGURE_EXTRA_ENV
+    export CFLAGS=${PYTHON_CFLAGS} &&
+    export CPPFLAGS=${PYTHON_CFLAGS} &&
+    export LDFLAGS=${PYTHON_LDFLAGS} &&
+    export PKG_CONFIG_PATH=${LIBDIR}/ffi/lib/pkgconfig)
+  set(PYTHON_PATCH ${PATCH_CMD} --verbose -p1 -d ${BUILD_DIR}/python/src/external_python < ${PATCH_DIR}/python_linux.diff)
 
-	ExternalProject_Add(external_python
-		URL ${PYTHON_URI}
-		DOWNLOAD_DIR ${DOWNLOAD_DIR}
-		URL_HASH MD5=${PYTHON_HASH}
-		PREFIX ${BUILD_DIR}/python
-		PATCH_COMMAND ${PYTHON_PATCH}
-		CONFIGURE_COMMAND ${PYTHON_CONFIGURE_ENV} && ${PYTHON_CONFIGURE_EXTRA_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/python ${PYTHON_CONFIGURE_EXTRA_ARGS}
-		BUILD_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make -j${MAKE_THREADS}
-		INSTALL_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make install
-		INSTALL_DIR ${LIBDIR}/python)
+  ExternalProject_Add(external_python
+    URL ${PYTHON_URI}
+    DOWNLOAD_DIR ${DOWNLOAD_DIR}
+    URL_HASH MD5=${PYTHON_HASH}
+    PREFIX ${BUILD_DIR}/python
+    PATCH_COMMAND ${PYTHON_PATCH}
+    CONFIGURE_COMMAND ${PYTHON_CONFIGURE_ENV} && ${PYTHON_CONFIGURE_EXTRA_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/python ${PYTHON_CONFIGURE_EXTRA_ARGS}
+    BUILD_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make -j${MAKE_THREADS}
+    INSTALL_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make install
+    INSTALL_DIR ${LIBDIR}/python)
 
-	add_custom_target(Make_Python_Environment ALL DEPENDS external_python)
+  add_custom_target(Make_Python_Environment ALL DEPENDS external_python)
 endif()
 
 if(MSVC)
-	add_custom_command(
-		OUTPUT ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
-		OUTPUT ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/lib ${BUILD_DIR}/python/src/external_python/redist/lib
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_asyncio${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_asyncio${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_bz2${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_bz2${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_contextvars${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_contextvars${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes_test${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes_test${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_decimal${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_decimal${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_distutils_findvs${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_distutils_findvs${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_elementtree${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_elementtree${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_hashlib${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_hashlib${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_lzma${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_lzma${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_msi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_msi${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_multiprocessing${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_multiprocessing${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_overlapped${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_overlapped${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_queue${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_queue${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_socket${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_socket${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_sqlite3${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_sqlite3${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ssl${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ssl${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testbuffer${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testbuffer${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testcapi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testcapi${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testimportmultiple${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testimportmultiple${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testmultiphase${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testmultiphase${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/pyexpat${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/pyexpat${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/select${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/select${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/unicodedata${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/unicodedata${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/winsound${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/winsound${PYTHON_POSTFIX}.pyd
-		#xxlimited is an example extension module, we don't need to ship it and debug doesn't build it
-		#leaving it commented out, so I won't get confused again with the next update.
-		#COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/xxlimited${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/xxlimited${PYTHON_POSTFIX}.pyd
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libssl-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libssl-1_1${SSL_POSTFIX}.dll
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libcrypto-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libcrypto-1_1${SSL_POSTFIX}.dll
-		COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/sqlite3${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/sqlite3${PYTHON_POSTFIX}.dll
-		COMMAND ${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/python/src/external_python/redist" ${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz" "."
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
-	)
+  add_custom_command(
+    OUTPUT ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
+    OUTPUT ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/lib ${BUILD_DIR}/python/src/external_python/redist/lib
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_asyncio${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_asyncio${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_bz2${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_bz2${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_contextvars${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_contextvars${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ctypes_test${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ctypes_test${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_decimal${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_decimal${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_distutils_findvs${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_distutils_findvs${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_elementtree${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_elementtree${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_hashlib${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_hashlib${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_lzma${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_lzma${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_msi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_msi${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_multiprocessing${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_multiprocessing${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_overlapped${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_overlapped${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_queue${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_queue${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_socket${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_socket${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_sqlite3${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_sqlite3${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_ssl${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_ssl${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testbuffer${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testbuffer${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testcapi${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testcapi${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testimportmultiple${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testimportmultiple${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/_testmultiphase${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/_testmultiphase${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/pyexpat${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/pyexpat${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/select${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/select${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/unicodedata${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/unicodedata${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/winsound${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/winsound${PYTHON_POSTFIX}.pyd
+    #xxlimited is an example extension module, we don't need to ship it and debug doesn't build it
+    #leaving it commented out, so I won't get confused again with the next update.
+    #COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/xxlimited${PYTHON_POSTFIX}.pyd" ${BUILD_DIR}/python/src/external_python/redist/lib/xxlimited${PYTHON_POSTFIX}.pyd
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libssl-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libssl-1_1${SSL_POSTFIX}.dll
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/libcrypto-1_1${SSL_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/libcrypto-1_1${SSL_POSTFIX}.dll
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/sqlite3${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/redist/lib/sqlite3${PYTHON_POSTFIX}.dll
+    COMMAND ${CMAKE_COMMAND} -E chdir "${BUILD_DIR}/python/src/external_python/redist" ${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz" "."
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/python/ ${HARVEST_TARGET}/python/
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${HARVEST_TARGET}/Release/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz
+  )
 
-	add_custom_target(Package_Python ALL DEPENDS external_python ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe)
+  add_custom_target(Package_Python ALL DEPENDS external_python ${LIBDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.tar.gz ${BUILD_DIR}/python/src/external_python/redist/bin/python${PYTHON_POSTFIX}.exe)
 
-	add_custom_command(OUTPUT ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
-		COMMAND	${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/redist ${BUILD_DIR}/python/src/external_python/run
-		COMMAND	${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/run/include
-		COMMAND	${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${BUILD_DIR}/python/src/external_python/run/include/pyconfig.h
-		COMMAND	${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
-		COMMAND	${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib  #missing postfix on purpose, distutils is not expecting it
-		COMMAND	${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib  #other things like numpy still want it though.
-		COMMAND	${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
-		COMMAND	${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe -m ensurepip --upgrade
-	)
-	add_custom_target(Make_Python_Environment ALL DEPENDS ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe Package_Python)
+  add_custom_command(OUTPUT ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/redist ${BUILD_DIR}/python/src/external_python/run
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/python/src/external_python/include ${BUILD_DIR}/python/src/external_python/run/include
+    COMMAND ${CMAKE_COMMAND} -E copy "${BUILD_DIR}/python/src/external_python/PC/pyconfig.h" ${BUILD_DIR}/python/src/external_python/run/include/pyconfig.h
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.dll
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib  #missing postfix on purpose, distutils is not expecting it
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib" ${BUILD_DIR}/python/src/external_python/run/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib  #other things like numpy still want it though.
+    COMMAND ${CMAKE_COMMAND} -E copy "${PYTHON_OUTPUTDIR}/python${PYTHON_POSTFIX}.exe" ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe
+    COMMAND ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe -m ensurepip --upgrade
+  )
+  add_custom_target(Make_Python_Environment ALL DEPENDS ${BUILD_DIR}/python/src/external_python/run/python${PYTHON_POSTFIX}.exe Package_Python)
 endif()
 
 if(UNIX)
-	add_dependencies(
-		external_python
-		external_bzip2
-		external_ffi
-		external_lzma
-		external_ssl
-		external_sqlite
-		external_zlib
-	)
+  add_dependencies(
+    external_python
+    external_bzip2
+    external_ffi
+    external_lzma
+    external_ssl
+    external_sqlite
+    external_zlib
+  )
 endif()
diff --git a/build_files/build_environment/cmake/python_site_packages.cmake b/build_files/build_environment/cmake/python_site_packages.cmake
index 0619bc3f8875d4e405491ba5afb1688f968b74a7..3a2901cadb7408b86270962f25b1efa144e855f3 100644
--- a/build_files/build_environment/cmake/python_site_packages.cmake
+++ b/build_files/build_environment/cmake/python_site_packages.cmake
@@ -16,26 +16,26 @@
 #
 # ***** END GPL LICENSE BLOCK *****
 if(WIN32)
-	set(HARVEST_CMD cmd /C FOR /d /r ${BUILD_DIR}/python/src/external_python/run/lib/site-packages %d IN (__pycache__) DO @IF EXIST "%d" rd /s /q "%d" &&
-		${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/idna ${HARVEST_TARGET}/Release/site-packages/idna &&
-		${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/chardet ${HARVEST_TARGET}/Release/site-packages/chardet &&
-		${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/urllib3 ${HARVEST_TARGET}/Release/site-packages/urllib3 &&
-		${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/certifi ${HARVEST_TARGET}/Release/site-packages/certifi &&
-		${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/requests ${HARVEST_TARGET}/Release/site-packages/requests
-	)
+  set(HARVEST_CMD cmd /C FOR /d /r ${BUILD_DIR}/python/src/external_python/run/lib/site-packages %d IN (__pycache__) DO @IF EXIST "%d" rd /s /q "%d" &&
+    ${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/idna ${HARVEST_TARGET}/Release/site-packages/idna &&
+    ${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/chardet ${HARVEST_TARGET}/Release/site-packages/chardet &&
+    ${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/urllib3 ${HARVEST_TARGET}/Release/site-packages/urllib3 &&
+    ${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/certifi ${HARVEST_TARGET}/Release/site-packages/certifi &&
+    ${CMAKE_COMMAND} -E copy_directory  ${BUILD_DIR}/python/src/external_python/run/lib/site-packages/requests ${HARVEST_TARGET}/Release/site-packages/requests
+  )
 else()
-	set(HARVEST_CMD echo .)
+  set(HARVEST_CMD echo .)
 endif()
 
 ExternalProject_Add(external_python_site_packages
-	DOWNLOAD_COMMAND ""
-	CONFIGURE_COMMAND ""
-	BUILD_COMMAND ""
-	PREFIX ${BUILD_DIR}/site_packages
-	INSTALL_COMMAND ${PYTHON_BINARY} -m pip install idna==${IDNA_VERSION} chardet==${CHARDET_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} --no-binary :all: && ${HARVEST_CMD}
+  DOWNLOAD_COMMAND ""
+  CONFIGURE_COMMAND ""
+  BUILD_COMMAND ""
+  PREFIX ${BUILD_DIR}/site_packages
+  INSTALL_COMMAND ${PYTHON_BINARY} -m pip install idna==${IDNA_VERSION} chardet==${CHARDET_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} --no-binary :all: && ${HARVEST_CMD}
 )
 
 add_dependencies(
-	external_python_site_packages
-	Make_Python_Environment
+  external_python_site_packages
+  Make_Python_Environment
 )
diff --git a/build_files/build_environment/cmake/sdl.cmake b/build_files/build_environment/cmake/sdl.cmake
index ab81ad130e8863596c9de2fa2435f178692e611d..5dfe78601ff130b1d5ed5e872d104ecd059e5208 100644
--- a/build_files/build_environment/cmake/sdl.cmake
+++ b/build_files/build_environment/cmake/sdl.cmake
@@ -17,33 +17,33 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(SDL_EXTRA_ARGS
-		-DSDL_STATIC=Off
-	)
+  set(SDL_EXTRA_ARGS
+    -DSDL_STATIC=Off
+  )
 else()
-	set(SDL_EXTRA_ARGS
-		-DSDL_STATIC=ON
-		-DSDL_SHARED=OFF
-		-DSDL_VIDEO=OFF
-		-DSNDIO=OFF
-	)
+  set(SDL_EXTRA_ARGS
+    -DSDL_STATIC=ON
+    -DSDL_SHARED=OFF
+    -DSDL_VIDEO=OFF
+    -DSNDIO=OFF
+  )
 endif()
 
 ExternalProject_Add(external_sdl
-	URL ${SDL_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${SDL_HASH}
-	PREFIX ${BUILD_DIR}/sdl
-	PATCH_COMMAND ${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/sdl/src/external_sdl < ${PATCH_DIR}/sdl.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/sdl ${DEFAULT_CMAKE_FLAGS} ${SDL_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/sdl
+  URL ${SDL_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${SDL_HASH}
+  PREFIX ${BUILD_DIR}/sdl
+  PATCH_COMMAND ${PATCH_CMD} -p 0 -N -d ${BUILD_DIR}/sdl/src/external_sdl < ${PATCH_DIR}/sdl.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/sdl ${DEFAULT_CMAKE_FLAGS} ${SDL_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/sdl
 )
 
 if(BUILD_MODE STREQUAL Release AND WIN32)
-	ExternalProject_Add_Step(external_sdl after_install
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/include/sdl2 ${HARVEST_TARGET}/sdl/include
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/lib ${HARVEST_TARGET}/sdl/lib
-		COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/bin ${HARVEST_TARGET}/sdl/lib
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_sdl after_install
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/include/sdl2 ${HARVEST_TARGET}/sdl/include
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/lib ${HARVEST_TARGET}/sdl/lib
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/sdl/bin ${HARVEST_TARGET}/sdl/lib
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/setup_mingw32.cmake b/build_files/build_environment/cmake/setup_mingw32.cmake
index afb44e8e88d418592273ec388ec7e1c9e87287d8..c9fbe301ac72c52eb2191afb0aad64021e247fe2 100644
--- a/build_files/build_environment/cmake/setup_mingw32.cmake
+++ b/build_files/build_environment/cmake/setup_mingw32.cmake
@@ -24,11 +24,11 @@
 
 message("LIBDIR = ${LIBDIR}")
 macro(cmake_to_msys_path MsysPath ResultingPath)
-	string(REPLACE ":" "" TmpPath "${MsysPath}")
-	string(SUBSTRING ${TmpPath} 0 1 Drive)
-	string(SUBSTRING ${TmpPath} 1 255 PathPart)
-	string(TOLOWER ${Drive} LowerDrive)
-	string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
+  string(REPLACE ":" "" TmpPath "${MsysPath}")
+  string(SUBSTRING ${TmpPath} 0 1 Drive)
+  string(SUBSTRING ${TmpPath} 1 255 PathPart)
+  string(TOLOWER ${Drive} LowerDrive)
+  string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
 endmacro()
 cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
 message("mingw_LIBDIR = ${mingw_LIBDIR}")
@@ -36,192 +36,192 @@ message("mingw_LIBDIR = ${mingw_LIBDIR}")
 message("Checking for mingw32")
 # download mingw32
 if(NOT EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
-	message("Downloading mingw32")
-	file(DOWNLOAD "https://astuteinternet.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.4/threads-win32/sjlj/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
+  message("Downloading mingw32")
+  file(DOWNLOAD "https://astuteinternet.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.4/threads-win32/sjlj/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z")
 endif()
 
 # make mingw root directory
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 endif()
 
 # extract mingw32
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z"))
-	message("Extracting mingw32")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
-	)
+  message("Extracting mingw32")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/i686-4.9.4-release-win32-sjlj-rt_v5-rev0.7z
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
+  )
 endif()
 
 message("Checking for pkg-config")
 if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
-	message("Downloading pkg-config")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
+  message("Downloading pkg-config")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
 endif()
 
 # extract pkgconfig
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
-	message("Extracting pkg-config")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/
-	)
+  message("Extracting pkg-config")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe"
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/pkg-config.exe"
+  )
 
 endif()
 
 message("Checking for nasm")
 if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
-	message("Downloading nasm")
-	file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win32/nasm-2.13.02-win32.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
+  message("Downloading nasm")
+  file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win32/nasm-2.13.02-win32.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip")
 endif()
 
 # extract nasm
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"))
-	message("Extracting nasm")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/
-	)
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe"
-	)
+  message("Extracting nasm")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win32.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/
+  )
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe"
+  )
 
 endif()
 SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw32/bin/nasm.exe)
 message("Checking for mingwGet")
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
-	message("Downloading mingw-get")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
+  message("Downloading mingw-get")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
 endif()
 
 # extract mingw_get
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
-	message("Extracting mingw-get")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/
-	)
+  message("Extracting mingw-get")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw32/
+  )
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/make.exe"))
-	message("Installing MSYS")
-	execute_process(
-		COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-patch
-		WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw32/bin/
-	)
+  message("Installing MSYS")
+  execute_process(
+    COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-patch
+    WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw32/bin/
+  )
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/mktemp.exe"))
-	message("Installing mktemp")
-	execute_process(
-		COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-mktemp
-		WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw32/bin/
-	)
+  message("Installing mktemp")
+  execute_process(
+    COMMAND ${DOWNLOAD_DIR}/mingw/mingw32/bin/mingw-get install msys msys-mktemp
+    WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw32/bin/
+  )
 endif()
 
 
 message("Checking for CoreUtils")
 # download old core_utils for pr.exe (ffmpeg needs it to build)
 if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
-	message("Downloading CoreUtils 5.97")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
+  message("Downloading CoreUtils 5.97")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"))
-	message("Installing pr from CoreUtils 5.97")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  message("Installing pr from CoreUtils 5.97")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw32/msys/1.0/bin/pr.exe"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
+  )
 endif()
 
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd")
-	message("Installing ming32sh.cmd")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming32sh.cmd  ${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd
-	)
+  message("Installing ming32sh.cmd")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming32sh.cmd  ${DOWNLOAD_DIR}/mingw/mingw32/ming32sh.cmd
+  )
 endif()
 
 message("Checking for perl")
 # download perl for libvpx
 if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
-	message("Downloading perl")
-	file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-32bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
+  message("Downloading perl")
+  file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-32bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip")
 endif()
 
 # make perl root directory
 if(NOT EXISTS "${DOWNLOAD_DIR}/perl32")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl32
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl32
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 endif()
 
 # extract perl
 if((NOT EXISTS "${DOWNLOAD_DIR}/perl32/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip"))
-	message("Extracting perl")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl32
-	)
+  message("Extracting perl")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-32bit-portable.zip
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl32
+  )
 endif()
 
 # get yasm for vpx
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
-	message("Downloading yasm")
-	file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
+  message("Downloading yasm")
+  file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/yasm.exe")
 endif()
 
 message("checking i686-w64-mingw32-strings")
 # copy strings.exe to i686-w64-mingw32-strings for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe")
-	message("fixing i686-w64-mingw32-strings.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe"
-	)
+  message("fixing i686-w64-mingw32-strings.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strings.exe"
+  )
 endif()
 
 message("checking i686-w64-mingw32-ar.exe")
 # copy ar.exe to i686-w64-mingw32-ar.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe")
-	message("fixing i686-w64-mingw32-ar.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe"
-	)
+  message("fixing i686-w64-mingw32-ar.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ar.exe"
+  )
 endif()
 
 message("checking i686-w64-mingw32-strip.exe")
 # copy strip.exe to i686-w64-mingw32-strip.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe")
-	message("fixing i686-w64-mingw32-strip.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe"
-	)
+  message("fixing i686-w64-mingw32-strip.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-strip.exe"
+  )
 endif()
 
 message("checking i686-w64-mingw32-ranlib.exe")
 # copy ranlib.exe to i686-w64-mingw32-ranlib.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe")
-	message("fixing i686-w64-mingw32-ranlib.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe"
-	)
+  message("fixing i686-w64-mingw32-ranlib.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw32/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw32/bin/i686-w64-mingw32-ranlib.exe"
+  )
 endif()
diff --git a/build_files/build_environment/cmake/setup_mingw64.cmake b/build_files/build_environment/cmake/setup_mingw64.cmake
index 3ed020d373bdda5b503aff7dd9a02fa6bb981fe6..5ac9722d23d6dac65199cb3e1b9bb9bd47b802c2 100644
--- a/build_files/build_environment/cmake/setup_mingw64.cmake
+++ b/build_files/build_environment/cmake/setup_mingw64.cmake
@@ -24,11 +24,11 @@
 
 message("LIBDIR = ${LIBDIR}")
 macro(cmake_to_msys_path MsysPath ResultingPath)
-	string(REPLACE ":" "" TmpPath "${MsysPath}")
-	string(SUBSTRING ${TmpPath} 0 1 Drive)
-	string(SUBSTRING ${TmpPath} 1 255 PathPart)
-	string(TOLOWER ${Drive} LowerDrive)
-	string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
+  string(REPLACE ":" "" TmpPath "${MsysPath}")
+  string(SUBSTRING ${TmpPath} 0 1 Drive)
+  string(SUBSTRING ${TmpPath} 1 255 PathPart)
+  string(TOLOWER ${Drive} LowerDrive)
+  string(CONCAT ${ResultingPath} "/" ${LowerDrive} ${PathPart})
 endmacro()
 cmake_to_msys_path(${LIBDIR} mingw_LIBDIR)
 message("mingw_LIBDIR = ${mingw_LIBDIR}")
@@ -36,192 +36,192 @@ message("mingw_LIBDIR = ${mingw_LIBDIR}")
 message("Checking for mingw64")
 # download ming64
 if(NOT EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
-	message("Downloading mingw64")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.4/threads-win32/seh/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
+  message("Downloading mingw64")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.4/threads-win32/seh/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z" "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z")
 endif()
 
 # make mingw root directory
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/mingw
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 endif()
 
 # extract mingw64
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd") AND (EXISTS "${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z"))
-	message("Extracting mingw64")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
-	)
+  message("Extracting mingw64")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/x86_64-4.9.4-release-win32-seh-rt_v5-rev0.7z
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw
+  )
 endif()
 
 message("Checking for pkg-config")
 if(NOT EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
-	message("Downloading pkg-config")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
+  message("Downloading pkg-config")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1_bin-win32.zip" "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip")
 endif()
 
 # extract pkgconfig
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe") AND (EXISTS "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"))
-	message("Extracting pkg-config")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/
-	)
+  message("Extracting pkg-config")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1_bin-win32.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe"
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/pkg-config-lite-0.28-1/bin/pkg-config.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/pkg-config.exe"
+  )
 
 endif()
 
 message("Checking for nasm")
 if(NOT EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
-	message("Downloading nasm")
-	file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win64/nasm-2.13.02-win64.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
+  message("Downloading nasm")
+  file(DOWNLOAD "http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/win64/nasm-2.13.02-win64.zip" "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip")
 endif()
 
 # extract nasm
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe") AND (EXISTS "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"))
-	message("Extracting nasm")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/
-	)
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe"
-	)
+  message("Extracting nasm")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/nasm-2.13.02-win64.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/
+  )
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/nasm-2.13.02/nasm.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe"
+  )
 
 endif()
 SET(NASM_PATH ${DOWNLOAD_DIR}/mingw/mingw64/bin/nasm.exe)
 
 message("Checking for mingwGet")
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
-	message("Downloading mingw-get")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
+  message("Downloading mingw-get")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get/mingw-get-0.6.2-beta-20131004-1/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip" "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip")
 endif()
 
 # extract mingw_get
 if((NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (EXISTS "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"))
-	message("Extracting mingw-get")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/
-	)
+  message("Extracting mingw-get")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf "${DOWNLOAD_DIR}/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/mingw/mingw64/
+  )
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/make.exe"))
-	message("Installing MSYS")
-	execute_process(
-		COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-patch
-		WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw64/bin/
-	)
+  message("Installing MSYS")
+  execute_process(
+    COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-patch
+    WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw64/bin/
+  )
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get.exe") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/mktemp.exe"))
-	message("Installing mktemp")
-	execute_process(
-		COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-mktemp
-		WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw64/bin/
-	)
+  message("Installing mktemp")
+  execute_process(
+    COMMAND ${DOWNLOAD_DIR}/mingw/mingw64/bin/mingw-get install msys msys-mktemp
+    WORKING_DIRECTORY  ${DOWNLOAD_DIR}/mingw/mingw64/bin/
+  )
 endif()
 
 message("Checking for CoreUtils")
 # download old core_utils for pr.exe (ffmpeg needs it to build)
 if(NOT EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
-	message("Downloading CoreUtils 5.97")
-	file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
+  message("Downloading CoreUtils 5.97")
+  file(DOWNLOAD "https://nchc.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2" "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2")
 endif()
 
 if((EXISTS "${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2") AND (NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"))
-	message("Installing pr from CoreUtils 5.97")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  message("Installing pr from CoreUtils 5.97")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/tmp_coreutils
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
+  )
 
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy ${DOWNLOAD_DIR}/tmp_coreutils/coreutils-5.97/bin/pr.exe "${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/pr.exe"
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/tmp_coreutils/
+  )
 endif()
 
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd")
-	message("Installing ming64sh.cmd")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming64sh.cmd  ${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd
-	)
+  message("Installing ming64sh.cmd")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/ming64sh.cmd  ${DOWNLOAD_DIR}/mingw/mingw64/ming64sh.cmd
+  )
 endif()
 
 message("Checking for perl")
 # download perl for libvpx
 if(NOT EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
-	message("Downloading perl")
-	file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-64bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
+  message("Downloading perl")
+  file(DOWNLOAD "http://strawberryperl.com/download/5.22.1.3/strawberry-perl-5.22.1.3-64bit-portable.zip" "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip")
 endif()
 
 # make perl root directory
 if(NOT EXISTS "${DOWNLOAD_DIR}/perl")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}
-	)
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${DOWNLOAD_DIR}/perl
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}
+  )
 endif()
 
 # extract perl
 if((NOT EXISTS "${DOWNLOAD_DIR}/perl/portable.perl") AND (EXISTS "${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip"))
-	message("Extracting perl")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip
-		WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl
-	)
+  message("Extracting perl")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar jxf ${DOWNLOAD_DIR}/strawberry-perl-5.22.1.3-64bit-portable.zip
+    WORKING_DIRECTORY ${DOWNLOAD_DIR}/perl
+  )
 endif()
 
 # get yasm for vpx
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
-	message("Downloading yasm")
-	file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
+  message("Downloading yasm")
+  file(DOWNLOAD "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/yasm.exe")
 endif()
 
 message("checking x86_64-w64-mingw32-strings.exe")
 # copy strings.exe to x86_64-w64-mingw32-strings.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe")
-	message("fixing x86_64-w64-mingw32-strings.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe"
-	)
+  message("fixing x86_64-w64-mingw32-strings.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strings.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strings.exe"
+  )
 endif()
 
 message("checking x86_64-w64-mingw32-ar.exe")
 # copy ar.exe to x86_64-w64-mingw32-ar.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe")
-	message("fixing x86_64-w64-mingw32-ar.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe"
-	)
+  message("fixing x86_64-w64-mingw32-ar.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ar.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ar.exe"
+  )
 endif()
 
 message("checking x86_64-w64-mingw32-strip.exe")
 # copy strip.exe to x86_64-w64-mingw32-strip.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe")
-	message("fixing x86_64-w64-mingw32-strip.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe"
-	)
+  message("fixing x86_64-w64-mingw32-strip.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/strip.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-strip.exe"
+  )
 endif()
 
 message("checking x86_64-w64-mingw32-ranlib.exe")
 # copy ranlib.exe to x86_64-w64-mingw32-ranlib.exe for x264
 if(NOT EXISTS "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe")
-	message("fixing x86_64-w64-mingw32-ranlib.exe")
-	execute_process(
-		COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe"
-	)
+  message("fixing x86_64-w64-mingw32-ranlib.exe")
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E copy "${DOWNLOAD_DIR}/mingw/mingw64/bin/ranlib.exe" "${DOWNLOAD_DIR}/mingw/mingw64/bin/x86_64-w64-mingw32-ranlib.exe"
+  )
 endif()
diff --git a/build_files/build_environment/cmake/sndfile.cmake b/build_files/build_environment/cmake/sndfile.cmake
index 2c4da159280c4434d56a8e2f17caa048de2243ed..87d421a37641a4a8de2e9a98898f03577f0d2a1a 100644
--- a/build_files/build_environment/cmake/sndfile.cmake
+++ b/build_files/build_environment/cmake/sndfile.cmake
@@ -20,43 +20,43 @@ set(SNDFILE_EXTRA_ARGS)
 set(SNDFILE_ENV PKG_CONFIG_PATH=${mingw_LIBDIR}/ogg/lib/pkgconfig:${mingw_LIBDIR}/vorbis/lib/pkgconfig:${mingw_LIBDIR}/flac/lib/pkgconfig:${mingw_LIBDIR})
 
 if(WIN32)
-	set(SNDFILE_ENV set ${SNDFILE_ENV} &&)
-	#shared for windows because static libs will drag in a libgcc dependency.
-	set(SNDFILE_OPTIONS --disable-static --enable-shared )
+  set(SNDFILE_ENV set ${SNDFILE_ENV} &&)
+  #shared for windows because static libs will drag in a libgcc dependency.
+  set(SNDFILE_OPTIONS --disable-static --enable-shared )
 else()
-	set(SNDFILE_OPTIONS --enable-static --disable-shared )
+  set(SNDFILE_OPTIONS --enable-static --disable-shared )
 endif()
 
 if(UNIX)
-	set(SNDFILE_PATCH_CMD ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/sndfile/src/external_sndfile < ${PATCH_DIR}/sndfile.diff)
+  set(SNDFILE_PATCH_CMD ${PATCH_CMD} --verbose -p 0 -d ${BUILD_DIR}/sndfile/src/external_sndfile < ${PATCH_DIR}/sndfile.diff)
 else()
-	set(SNDFILE_PATCH_CMD)
+  set(SNDFILE_PATCH_CMD)
 endif()
 
 ExternalProject_Add(external_sndfile
-	URL ${SNDFILE_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${SNDFILE_HASH}
-	PREFIX ${BUILD_DIR}/sndfile
-	PATCH_COMMAND ${SNDFILE_PATCH_CMD}
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && ${SNDFILE_ENV} ${CONFIGURE_COMMAND} ${SNDFILE_OPTIONS} --prefix=${mingw_LIBDIR}/sndfile
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make install
-	INSTALL_DIR ${LIBDIR}/sndfile
+  URL ${SNDFILE_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${SNDFILE_HASH}
+  PREFIX ${BUILD_DIR}/sndfile
+  PATCH_COMMAND ${SNDFILE_PATCH_CMD}
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && ${SNDFILE_ENV} ${CONFIGURE_COMMAND} ${SNDFILE_OPTIONS} --prefix=${mingw_LIBDIR}/sndfile
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sndfile/src/external_sndfile/ && make install
+  INSTALL_DIR ${LIBDIR}/sndfile
 )
 
 if(MSVC)
-	set_target_properties(external_sndfile PROPERTIES FOLDER Mingw)
+  set_target_properties(external_sndfile PROPERTIES FOLDER Mingw)
 endif()
 
 add_dependencies(
-	external_sndfile
-	external_ogg
-	external_vorbis
+  external_sndfile
+  external_ogg
+  external_vorbis
 )
 if(UNIX)
-	add_dependencies(
-		external_sndfile
-		external_flac
-	)
+  add_dependencies(
+    external_sndfile
+    external_flac
+  )
 endif()
diff --git a/build_files/build_environment/cmake/spnav.cmake b/build_files/build_environment/cmake/spnav.cmake
index 0dec97997158040b901c49257d8b9fa06818984f..5e67dbc5746ff52f870257480c24fc97b1a0d8ab 100644
--- a/build_files/build_environment/cmake/spnav.cmake
+++ b/build_files/build_environment/cmake/spnav.cmake
@@ -17,12 +17,12 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_spnav
-	URL ${SPNAV_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${SPNAV_HASH}
-	PREFIX ${BUILD_DIR}/spnav
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/spnav --disable-shared --enable-static --with-pic
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make install
-	INSTALL_DIR ${LIBDIR}/spnav
+  URL ${SPNAV_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${SPNAV_HASH}
+  PREFIX ${BUILD_DIR}/spnav
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/spnav --disable-shared --enable-static --with-pic
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/spnav/src/external_spnav/ && make install
+  INSTALL_DIR ${LIBDIR}/spnav
 )
diff --git a/build_files/build_environment/cmake/sqlite.cmake b/build_files/build_environment/cmake/sqlite.cmake
index e5aa124a41485d2ae16556278aa0e508c15437e0..647e50b315aa85c557c082da594edbb14695ad54 100644
--- a/build_files/build_environment/cmake/sqlite.cmake
+++ b/build_files/build_environment/cmake/sqlite.cmake
@@ -20,38 +20,38 @@ set(SQLITE_CONFIGURE_ENV echo .)
 set(SQLITE_CONFIGURATION_ARGS)
 
 if(UNIX AND NOT APPLE)
-	set(SQLITE_LDFLAGS -Wl,--as-needed)
-	set(SQLITE_CFLAGS
-		"-DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_COLUMN_METADATA \
-		-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS \
-		-DSQLITE_ENABLE_RTREE=1 -DSQLITE_SOUNDEX=1 \
-		-DSQLITE_ENABLE_UNLOCK_NOTIFY \
-		-DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_ENABLE_DBSTAT_VTAB \
-		-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \
-		-DSQLITE_ENABLE_LOAD_EXTENSION \
-		-DSQLITE_ENABLE_JSON1 \
-		-DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
-		-DSQLITE_THREADSAFE=1 \
-		-DSQLITE_ENABLE_FTS3_TOKENIZER=1 \
-		-DSQLITE_MAX_SCHEMA_RETRY=25 \
-		-DSQLITE_ENABLE_PREUPDATE_HOOK \
-		-DSQLITE_ENABLE_SESSION \
-		-DSQLITE_ENABLE_STMTVTAB \
-		-DSQLITE_MAX_VARIABLE_NUMBER=250000 \
-		-fPIC")
-	set(SQLITE_CONFIGURE_ENV ${SQLITE_CONFIGURE_ENV} && export LDFLAGS=${SQLITE_LDFLAGS} && export CFLAGS=${SQLITE_CFLAGS})
-	set(SQLITE_CONFIGURATION_ARGS ${SQLITE_CONFIGURATION_ARGS} --enable-threadsafe --enable-load-extension --enable-json1 --enable-fts4 --enable-fts5
-	    --enable-shared=no)
+  set(SQLITE_LDFLAGS -Wl,--as-needed)
+  set(SQLITE_CFLAGS
+    "-DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_COLUMN_METADATA \
+    -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS \
+    -DSQLITE_ENABLE_RTREE=1 -DSQLITE_SOUNDEX=1 \
+    -DSQLITE_ENABLE_UNLOCK_NOTIFY \
+    -DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_ENABLE_DBSTAT_VTAB \
+    -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \
+    -DSQLITE_ENABLE_LOAD_EXTENSION \
+    -DSQLITE_ENABLE_JSON1 \
+    -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+    -DSQLITE_THREADSAFE=1 \
+    -DSQLITE_ENABLE_FTS3_TOKENIZER=1 \
+    -DSQLITE_MAX_SCHEMA_RETRY=25 \
+    -DSQLITE_ENABLE_PREUPDATE_HOOK \
+    -DSQLITE_ENABLE_SESSION \
+    -DSQLITE_ENABLE_STMTVTAB \
+    -DSQLITE_MAX_VARIABLE_NUMBER=250000 \
+    -fPIC")
+  set(SQLITE_CONFIGURE_ENV ${SQLITE_CONFIGURE_ENV} && export LDFLAGS=${SQLITE_LDFLAGS} && export CFLAGS=${SQLITE_CFLAGS})
+  set(SQLITE_CONFIGURATION_ARGS ${SQLITE_CONFIGURATION_ARGS} --enable-threadsafe --enable-load-extension --enable-json1 --enable-fts4 --enable-fts5
+      --enable-shared=no)
 endif()
 
 ExternalProject_Add(external_sqlite
-	URL ${SQLITE_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA1=${SQLITE_HASH}
-	PREFIX ${BUILD_DIR}/sqlite
-	PATCH_COMMAND ${SQLITE_PATCH_CMD}
-	CONFIGURE_COMMAND ${SQLITE_CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/sqlite ${SQLITE_CONFIGURATION_ARGS}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make install
-	INSTALL_DIR ${LIBDIR}/sqlite
+  URL ${SQLITE_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA1=${SQLITE_HASH}
+  PREFIX ${BUILD_DIR}/sqlite
+  PATCH_COMMAND ${SQLITE_PATCH_CMD}
+  CONFIGURE_COMMAND ${SQLITE_CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/sqlite ${SQLITE_CONFIGURATION_ARGS}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/sqlite/src/external_sqlite/ && make install
+  INSTALL_DIR ${LIBDIR}/sqlite
 )
diff --git a/build_files/build_environment/cmake/ssl.cmake b/build_files/build_environment/cmake/ssl.cmake
index 993e6f3ff6a910509f81ffde4c6083910153f8e5..3ee59aa9c040009a8c7bcb4c5fef8f21a98af908 100644
--- a/build_files/build_environment/cmake/ssl.cmake
+++ b/build_files/build_environment/cmake/ssl.cmake
@@ -20,29 +20,29 @@ set(SSL_CONFIGURE_COMMAND ./Configure)
 set(SSL_PATCH_CMD echo .)
 
 if (APPLE)
-	set(SSL_OS_COMPILER "blender-darwin-x86_64")
+  set(SSL_OS_COMPILER "blender-darwin-x86_64")
 else()
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(SSL_EXTRA_ARGS enable-ec_nistp_64_gcc_128)
-		set(SSL_OS_COMPILER "blender-linux-x86_64")
-	else()
-		set(SSL_OS_COMPILER "blender-linux-x86")
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(SSL_EXTRA_ARGS enable-ec_nistp_64_gcc_128)
+    set(SSL_OS_COMPILER "blender-linux-x86_64")
+  else()
+    set(SSL_OS_COMPILER "blender-linux-x86")
+  endif()
 endif()
 
 ExternalProject_Add(external_ssl
-	URL ${SSL_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${SSL_HASH}
-	PREFIX ${BUILD_DIR}/ssl
-	PATCH_COMMAND ${SSL_PATCH_CMD}
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && ${SSL_CONFIGURE_COMMAND} --prefix=${LIBDIR}/ssl
-		--openssldir=${LIBDIR}/ssl
-		no-shared
-		no-idea no-mdc2 no-rc5 no-zlib no-ssl3 enable-unit-test no-ssl3-method enable-rfc3779 enable-cms
-		--config=${CMAKE_CURRENT_SOURCE_DIR}/cmake/ssl.conf
-		${SSL_OS_COMPILER}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make install
-	INSTALL_DIR ${LIBDIR}/ssl
+  URL ${SSL_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${SSL_HASH}
+  PREFIX ${BUILD_DIR}/ssl
+  PATCH_COMMAND ${SSL_PATCH_CMD}
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && ${SSL_CONFIGURE_COMMAND} --prefix=${LIBDIR}/ssl
+    --openssldir=${LIBDIR}/ssl
+    no-shared
+    no-idea no-mdc2 no-rc5 no-zlib no-ssl3 enable-unit-test no-ssl3-method enable-rfc3779 enable-cms
+    --config=${CMAKE_CURRENT_SOURCE_DIR}/cmake/ssl.conf
+    ${SSL_OS_COMPILER}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ssl/src/external_ssl/ && make install
+  INSTALL_DIR ${LIBDIR}/ssl
 )
diff --git a/build_files/build_environment/cmake/tbb.cmake b/build_files/build_environment/cmake/tbb.cmake
index 4e0357da8bbd114de6d9d661fa87ffc40bbfb311..30efaeef8a9b7dd8b7ffd9db2e71c062f9307715 100644
--- a/build_files/build_environment/cmake/tbb.cmake
+++ b/build_files/build_environment/cmake/tbb.cmake
@@ -17,36 +17,36 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(TBB_EXTRA_ARGS
-	-DTBB_BUILD_SHARED=Off
-	-DTBB_BUILD_TBBMALLOC=Off
-	-DTBB_BUILD_TBBMALLOC_PROXY=Off
-	-DTBB_BUILD_STATIC=On
+  -DTBB_BUILD_SHARED=Off
+  -DTBB_BUILD_TBBMALLOC=Off
+  -DTBB_BUILD_TBBMALLOC_PROXY=Off
+  -DTBB_BUILD_STATIC=On
 )
 
 # CMake script for TBB from https://github.com/wjakob/tbb/blob/master/CMakeLists.txt
 ExternalProject_Add(external_tbb
-	URL ${TBB_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${TBB_HASH}
-	PREFIX ${BUILD_DIR}/tbb
-	PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_tbb.txt ${BUILD_DIR}/tbb/src/external_tbb/CMakeLists.txt &&
-	${CMAKE_COMMAND} -E copy ${BUILD_DIR}/tbb/src/external_tbb/build/vs2013/version_string.ver ${BUILD_DIR}/tbb/src/external_tbb/src/tbb/version_string.ver
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tbb ${DEFAULT_CMAKE_FLAGS} ${TBB_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/tbb
+  URL ${TBB_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${TBB_HASH}
+  PREFIX ${BUILD_DIR}/tbb
+  PATCH_COMMAND COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_tbb.txt ${BUILD_DIR}/tbb/src/external_tbb/CMakeLists.txt &&
+  ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/tbb/src/external_tbb/build/vs2013/version_string.ver ${BUILD_DIR}/tbb/src/external_tbb/src/tbb/version_string.ver
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tbb ${DEFAULT_CMAKE_FLAGS} ${TBB_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/tbb
 )
 
 if (WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_tbb after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tbb/include/ ${HARVEST_TARGET}/tbb/include/
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_tbb after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
-			DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_tbb after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tbb/include/ ${HARVEST_TARGET}/tbb/include/
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_tbb after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
+      DEPENDEES install
+    )
+  endif()
 endif()
diff --git a/build_files/build_environment/cmake/theora.cmake b/build_files/build_environment/cmake/theora.cmake
index 4fa2f4815faf92fa15100f92d4d22a9a4ddad4eb..e5f94b15b021bb5d0766a70a70e5430173942476 100644
--- a/build_files/build_environment/cmake/theora.cmake
+++ b/build_files/build_environment/cmake/theora.cmake
@@ -17,28 +17,28 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_theora
-	URL ${THEORA_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${THEORA_HASH}
-	PREFIX ${BUILD_DIR}/theora
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
-		--disable-shared
-		--enable-static
-		--with-pic
-		--with-ogg=${LIBDIR}/ogg
-		--with-vorbis=${LIBDIR}/vorbis
-		--disable-examples
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make install
-	INSTALL_DIR ${LIBDIR}/theora
+  URL ${THEORA_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${THEORA_HASH}
+  PREFIX ${BUILD_DIR}/theora
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/theora
+    --disable-shared
+    --enable-static
+    --with-pic
+    --with-ogg=${LIBDIR}/ogg
+    --with-vorbis=${LIBDIR}/vorbis
+    --disable-examples
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/theora/src/external_theora/ && make install
+  INSTALL_DIR ${LIBDIR}/theora
 )
 
 add_dependencies(
-	external_theora
-	external_vorbis
-	external_ogg
+  external_theora
+  external_vorbis
+  external_ogg
 )
 
 if(MSVC)
-	set_target_properties(external_theora PROPERTIES FOLDER Mingw)
+  set_target_properties(external_theora PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/tiff.cmake b/build_files/build_environment/cmake/tiff.cmake
index 498145463cfb97a665573ca732fb95fbf958b871..fa5a14236034813dd8a85fa2a3c862534ddce7d2 100644
--- a/build_files/build_environment/cmake/tiff.cmake
+++ b/build_files/build_environment/cmake/tiff.cmake
@@ -17,31 +17,31 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(TIFF_EXTRA_ARGS
-	-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
-	-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
-	-DPNG_STATIC=ON
-	-DBUILD_SHARED_LIBS=OFF
-	-Dlzma=OFF
-	-Djbig=OFF
+  -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
+  -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
+  -DPNG_STATIC=ON
+  -DBUILD_SHARED_LIBS=OFF
+  -Dlzma=OFF
+  -Djbig=OFF
 )
 
 ExternalProject_Add(external_tiff
-	URL ${TIFF_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${TIFF_HASH}
-	PREFIX ${BUILD_DIR}/tiff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tiff ${DEFAULT_CMAKE_FLAGS} ${TIFF_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/tiff
+  URL ${TIFF_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${TIFF_HASH}
+  PREFIX ${BUILD_DIR}/tiff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tiff ${DEFAULT_CMAKE_FLAGS} ${TIFF_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/tiff
 )
 
 add_dependencies(
-	external_tiff
-	external_zlib
+  external_tiff
+  external_zlib
 )
 
 if(WIN32 AND BUILD_MODE STREQUAL Debug)
-	ExternalProject_Add_Step(external_tiff after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiffd${LIBEXT} ${LIBDIR}/tiff/lib/tiff${LIBEXT}
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_tiff after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiffd${LIBEXT} ${LIBDIR}/tiff/lib/tiff${LIBEXT}
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/tinyxml.cmake b/build_files/build_environment/cmake/tinyxml.cmake
index 9c7d0397c78daee681a69e2cfc599e009407e2d4..cbbbb0a0a49f3bb9171561b151714ade59634b21 100644
--- a/build_files/build_environment/cmake/tinyxml.cmake
+++ b/build_files/build_environment/cmake/tinyxml.cmake
@@ -20,12 +20,12 @@ set(TINYXML_EXTRA_ARGS
 )
 
 ExternalProject_Add(external_tinyxml
-	URL ${TINYXML_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${TINYXML_HASH}
-	PREFIX ${BUILD_DIR}/tinyxml
-	#patch taken from ocio
-	PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/tinyxml/src/external_tinyxml < ${PATCH_DIR}/tinyxml.diff
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tinyxml ${DEFAULT_CMAKE_FLAGS} ${TINYXML_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/tinyxml
+  URL ${TINYXML_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${TINYXML_HASH}
+  PREFIX ${BUILD_DIR}/tinyxml
+  #patch taken from ocio
+  PATCH_COMMAND ${PATCH_CMD} -p 1 -N -d ${BUILD_DIR}/tinyxml/src/external_tinyxml < ${PATCH_DIR}/tinyxml.diff
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tinyxml ${DEFAULT_CMAKE_FLAGS} ${TINYXML_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/tinyxml
 )
diff --git a/build_files/build_environment/cmake/versions.cmake b/build_files/build_environment/cmake/versions.cmake
index d3e3f7bea6aad1f9bb8da9ffe15825a347400fef..0a3c279f7e2fb90227781d1d4c27506fe3e15e37 100644
--- a/build_files/build_environment/cmake/versions.cmake
+++ b/build_files/build_environment/cmake/versions.cmake
@@ -47,27 +47,27 @@ set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653)
 
 set(ILMBASE_VERSION 2.3.0)
 if (WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		set(ILMBASE_VERSION_POSTFIX _s)
-		set(OPENEXR_VERSION_POSTFIX _s)
-	else()
-		set(ILMBASE_VERSION_POSTFIX _s_d)
-		set(OPENEXR_VERSION_POSTFIX _s_d)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    set(ILMBASE_VERSION_POSTFIX _s)
+    set(OPENEXR_VERSION_POSTFIX _s)
+  else()
+    set(ILMBASE_VERSION_POSTFIX _s_d)
+    set(OPENEXR_VERSION_POSTFIX _s_d)
+  endif()
 else()
-	set(ILMBASE_VERSION_POSTFIX)
+  set(ILMBASE_VERSION_POSTFIX)
 endif()
 set(ILMBASE_URI https://github.com/openexr/openexr/releases/download/v${ILMBASE_VERSION}/ilmbase-${ILMBASE_VERSION}.tar.gz)
 set(ILMBASE_HASH 354bf86de3b930ab87ac63619d60c860)
 
 set(OPENEXR_VERSION 2.3.0)
 if (WIN32) #release 2.3.0 tarball has broken cmake support
-	set(OPENEXR_URI https://github.com/openexr/openexr/archive/0ac2ea34c8f3134148a5df4052e40f155b76f6fb.tar.gz)
-	set(OPENEXR_HASH ed159435d508240712fbaaa21d94bafb)
+  set(OPENEXR_URI https://github.com/openexr/openexr/archive/0ac2ea34c8f3134148a5df4052e40f155b76f6fb.tar.gz)
+  set(OPENEXR_HASH ed159435d508240712fbaaa21d94bafb)
 else()
-	set(OPENEXR_VERSION_POSTFIX)
-	set(OPENEXR_URI https://github.com/openexr/openexr/releases/download/v${OPENEXR_VERSION}/openexr-${OPENEXR_VERSION}.tar.gz)
-	set(OPENEXR_HASH a157e8a46596bc185f2472a5a4682174)
+  set(OPENEXR_VERSION_POSTFIX)
+  set(OPENEXR_URI https://github.com/openexr/openexr/releases/download/v${OPENEXR_VERSION}/openexr-${OPENEXR_VERSION}.tar.gz)
+  set(OPENEXR_HASH a157e8a46596bc185f2472a5a4682174)
 endif()
 
 set(FREETYPE_VERSION 2.9.1)
diff --git a/build_files/build_environment/cmake/vorbis.cmake b/build_files/build_environment/cmake/vorbis.cmake
index ee3c5a9c87fcb67d4c877216ef38d6b25b30ee34..9ef62787e863622f90276a1da8ec4196a05878ca 100644
--- a/build_files/build_environment/cmake/vorbis.cmake
+++ b/build_files/build_environment/cmake/vorbis.cmake
@@ -17,25 +17,25 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_vorbis
-	URL ${VORBIS_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${VORBIS_HASH}
-	PREFIX ${BUILD_DIR}/vorbis
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/vorbis
-		--disable-shared
-		--enable-static
-		--with-pic
-		--with-ogg=${LIBDIR}/ogg
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make install
-	INSTALL_DIR ${LIBDIR}/vorbis
+  URL ${VORBIS_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${VORBIS_HASH}
+  PREFIX ${BUILD_DIR}/vorbis
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/vorbis
+    --disable-shared
+    --enable-static
+    --with-pic
+    --with-ogg=${LIBDIR}/ogg
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vorbis/src/external_vorbis/ && make install
+  INSTALL_DIR ${LIBDIR}/vorbis
 )
 
 add_dependencies(
-	external_vorbis
-	external_ogg
+  external_vorbis
+  external_ogg
 )
 
 if(MSVC)
-	set_target_properties(external_vorbis PROPERTIES FOLDER Mingw)
+  set_target_properties(external_vorbis PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/vpx.cmake b/build_files/build_environment/cmake/vpx.cmake
index 8989262135ba5679385a538a700b693da7b55f6d..1c3a7081b59f0d926e0702625f4703886bd83340 100644
--- a/build_files/build_environment/cmake/vpx.cmake
+++ b/build_files/build_environment/cmake/vpx.cmake
@@ -17,44 +17,44 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(VPX_EXTRA_FLAGS --target=x86_64-win64-gcc --disable-multithread)
-	else()
-		set(VPX_EXTRA_FLAGS --target=x86-win32-gcc --disable-multithread)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(VPX_EXTRA_FLAGS --target=x86_64-win64-gcc --disable-multithread)
+  else()
+    set(VPX_EXTRA_FLAGS --target=x86-win32-gcc --disable-multithread)
+  endif()
 else()
-	if(APPLE)
-		set(VPX_EXTRA_FLAGS --target=x86_64-darwin13-gcc)
-	else()
-		set(VPX_EXTRA_FLAGS --target=generic-gnu)
-	endif()
+  if(APPLE)
+    set(VPX_EXTRA_FLAGS --target=x86_64-darwin13-gcc)
+  else()
+    set(VPX_EXTRA_FLAGS --target=generic-gnu)
+  endif()
 endif()
 
 ExternalProject_Add(external_vpx
-	URL ${VPX_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${VPX_HASH}
-	PREFIX ${BUILD_DIR}/vpx
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
-		cd ${BUILD_DIR}/vpx/src/external_vpx/ &&
-		${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/vpx
-			--disable-shared
-			--enable-static
-			--disable-install-bins
-			--disable-install-srcs
-			--disable-sse4_1
-			--disable-sse3
-			--disable-ssse3
-			--disable-avx
-			--disable-avx2
-			--disable-unit-tests
-			--disable-examples
-			${VPX_EXTRA_FLAGS}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make install
-	INSTALL_DIR ${LIBDIR}/vpx
+  URL ${VPX_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${VPX_HASH}
+  PREFIX ${BUILD_DIR}/vpx
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} &&
+    cd ${BUILD_DIR}/vpx/src/external_vpx/ &&
+    ${CONFIGURE_COMMAND_NO_TARGET} --prefix=${LIBDIR}/vpx
+      --disable-shared
+      --enable-static
+      --disable-install-bins
+      --disable-install-srcs
+      --disable-sse4_1
+      --disable-sse3
+      --disable-ssse3
+      --disable-avx
+      --disable-avx2
+      --disable-unit-tests
+      --disable-examples
+      ${VPX_EXTRA_FLAGS}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/vpx/src/external_vpx/ && make install
+  INSTALL_DIR ${LIBDIR}/vpx
 )
 
 if(MSVC)
-	set_target_properties(external_vpx PROPERTIES FOLDER Mingw)
+  set_target_properties(external_vpx PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/webp.cmake b/build_files/build_environment/cmake/webp.cmake
index 92cd41b96ffec2a5f3fd044fd30e2d66a5464982..73557859ae66448bf4b7faaf7678f08bfc23f9c9 100644
--- a/build_files/build_environment/cmake/webp.cmake
+++ b/build_files/build_environment/cmake/webp.cmake
@@ -20,22 +20,22 @@
 # library itself does not depend on them, so should give no problems.
 
 set(WEBP_EXTRA_ARGS
-	-DWEBP_HAVE_SSE2=ON
-	-DWEBP_HAVE_SSE41=OFF
-	-DWEBP_HAVE_AVX2=OFF
+  -DWEBP_HAVE_SSE2=ON
+  -DWEBP_HAVE_SSE41=OFF
+  -DWEBP_HAVE_AVX2=OFF
 )
 
 if(WIN32)
-	set(WEBP_BUILD_DIR ${BUILD_MODE}/)
+  set(WEBP_BUILD_DIR ${BUILD_MODE}/)
 else()
-	set(WEBP_BUILD_DIR)
+  set(WEBP_BUILD_DIR)
 endif()
 
 ExternalProject_Add(external_webp
-	URL ${WEBP_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${WEBP_HASH}
-	PREFIX ${BUILD_DIR}/webp
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/webp -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${WEBP_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/webp
+  URL ${WEBP_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${WEBP_HASH}
+  PREFIX ${BUILD_DIR}/webp
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/webp -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${WEBP_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/webp
 )
diff --git a/build_files/build_environment/cmake/x264.cmake b/build_files/build_environment/cmake/x264.cmake
index 7d7b0758aaf75e37b7275d9107d1e107b409fd8a..eba0709e196f62f632807a8620c694f980f38e8a 100644
--- a/build_files/build_environment/cmake/x264.cmake
+++ b/build_files/build_environment/cmake/x264.cmake
@@ -17,29 +17,29 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(X264_EXTRA_ARGS --enable-win32thread --cross-prefix=${MINGW_HOST}- --host=${MINGW_HOST})
-	set(X264_PATCH_CMD ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/x264/src/external_x264 < ${PATCH_DIR}/x264.diff)
+  set(X264_EXTRA_ARGS --enable-win32thread --cross-prefix=${MINGW_HOST}- --host=${MINGW_HOST})
+  set(X264_PATCH_CMD ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/x264/src/external_x264 < ${PATCH_DIR}/x264.diff)
 else()
-	set(X264_PATCH_CMD echo .)
+  set(X264_PATCH_CMD echo .)
 endif()
 
 
 ExternalProject_Add(external_x264
-	URL ${X264_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${X264_HASH}
-	PREFIX ${BUILD_DIR}/x264
-	PATCH_COMMAND ${X264_PATCH_CMD}
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/x264
-		--enable-static
-		--enable-pic
-		--disable-lavf
-		${X264_EXTRA_ARGS}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make install
-	INSTALL_DIR ${LIBDIR}/x264
+  URL ${X264_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${X264_HASH}
+  PREFIX ${BUILD_DIR}/x264
+  PATCH_COMMAND ${X264_PATCH_CMD}
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/x264
+    --enable-static
+    --enable-pic
+    --disable-lavf
+    ${X264_EXTRA_ARGS}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/x264/src/external_x264/ && make install
+  INSTALL_DIR ${LIBDIR}/x264
 )
 
 if(MSVC)
-	set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
+  set_target_properties(external_x264 PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/xml2.cmake b/build_files/build_environment/cmake/xml2.cmake
index a8f87a67ad43a6c6478170f6689a8e3da6c8b40f..e4af71ef7c76ba547e3d75a751d67fd2375ad208 100644
--- a/build_files/build_environment/cmake/xml2.cmake
+++ b/build_files/build_environment/cmake/xml2.cmake
@@ -17,20 +17,20 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_xml2
-	URL ${XML2_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${XML2_HASH}
-	PREFIX ${BUILD_DIR}/xml2
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && ${CONFIGURE_COMMAND}
-		--prefix=${LIBDIR}/xml2
-		--disable-shared
-		--enable-static
-		--with-pic
-		--with-python=no
-		--with-lzma=no
-		--with-zlib=no
-		--with-iconv=no
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make install
-	INSTALL_DIR ${LIBDIR}/xml2
+  URL ${XML2_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${XML2_HASH}
+  PREFIX ${BUILD_DIR}/xml2
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && ${CONFIGURE_COMMAND}
+    --prefix=${LIBDIR}/xml2
+    --disable-shared
+    --enable-static
+    --with-pic
+    --with-python=no
+    --with-lzma=no
+    --with-zlib=no
+    --with-iconv=no
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xml2/src/external_xml2/ && make install
+  INSTALL_DIR ${LIBDIR}/xml2
 )
diff --git a/build_files/build_environment/cmake/xvidcore.cmake b/build_files/build_environment/cmake/xvidcore.cmake
index a341275ea47f91393bdd2193ce48fd956c10fbc4..5ff897fcc6fae0dcae16b26dde93fd948292665e 100644
--- a/build_files/build_environment/cmake/xvidcore.cmake
+++ b/build_files/build_environment/cmake/xvidcore.cmake
@@ -17,28 +17,28 @@
 # ***** END GPL LICENSE BLOCK *****
 
 if(WIN32)
-	set(XVIDCORE_EXTRA_ARGS --host=${MINGW_HOST})
+  set(XVIDCORE_EXTRA_ARGS --host=${MINGW_HOST})
 endif()
 
 ExternalProject_Add(external_xvidcore
-	URL ${XVIDCORE_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH SHA256=${XVIDCORE_HASH}
-	PREFIX ${BUILD_DIR}/xvidcore
-	CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/xvidcore ${XVIDCORE_EXTRA_ARGS}
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make -j${MAKE_THREADS}
-	INSTALL_COMMAND ${CONFIGURE_ENV} &&
-	${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/* && # clean because re-installing fails otherwise
-	cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make install
-	INSTALL_DIR ${LIBDIR}/xvidcore
+  URL ${XVIDCORE_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH SHA256=${XVIDCORE_HASH}
+  PREFIX ${BUILD_DIR}/xvidcore
+  CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/xvidcore ${XVIDCORE_EXTRA_ARGS}
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make -j${MAKE_THREADS}
+  INSTALL_COMMAND ${CONFIGURE_ENV} &&
+  ${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/* && # clean because re-installing fails otherwise
+  cd ${BUILD_DIR}/xvidcore/src/external_xvidcore/build/generic && make install
+  INSTALL_DIR ${LIBDIR}/xvidcore
 )
 
 ExternalProject_Add_Step(external_xvidcore after_install
-	COMMAND ${CMAKE_COMMAND} -E rename ${LIBDIR}/xvidcore/lib/xvidcore.a ${LIBDIR}/xvidcore/lib/libxvidcore.a || true
-	COMMAND ${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/xvidcore.dll.a
-	DEPENDEES install
+  COMMAND ${CMAKE_COMMAND} -E rename ${LIBDIR}/xvidcore/lib/xvidcore.a ${LIBDIR}/xvidcore/lib/libxvidcore.a || true
+  COMMAND ${CMAKE_COMMAND} -E remove ${LIBDIR}/xvidcore/lib/xvidcore.dll.a
+  DEPENDEES install
 )
 
 if(MSVC)
-	set_target_properties(external_xvidcore PROPERTIES FOLDER Mingw)
+  set_target_properties(external_xvidcore PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/build_environment/cmake/yamlcpp.cmake b/build_files/build_environment/cmake/yamlcpp.cmake
index 617158ff40a769587ff96520c95b68e7bebfab9c..b0ce77d079f9de24bc4b4e97e405ef2389b705b0 100644
--- a/build_files/build_environment/cmake/yamlcpp.cmake
+++ b/build_files/build_environment/cmake/yamlcpp.cmake
@@ -17,18 +17,18 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(YAMLCPP_EXTRA_ARGS
-	-DBUILD_GMOCK=OFF
-	-DYAML_CPP_BUILD_TESTS=OFF
-	-DYAML_CPP_BUILD_TOOLS=OFF
-	-DYAML_CPP_BUILD_CONTRIB=OFF
-	-DMSVC_SHARED_RT=OFF
+  -DBUILD_GMOCK=OFF
+  -DYAML_CPP_BUILD_TESTS=OFF
+  -DYAML_CPP_BUILD_TOOLS=OFF
+  -DYAML_CPP_BUILD_CONTRIB=OFF
+  -DMSVC_SHARED_RT=OFF
 )
 
 ExternalProject_Add(external_yamlcpp
-	URL ${YAMLCPP_URI}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	URL_HASH MD5=${YAMLCPP_HASH}
-	PREFIX ${BUILD_DIR}/yamlcpp
-	CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/yamlcpp ${DEFAULT_CMAKE_FLAGS} ${YAMLCPP_EXTRA_ARGS}
-	INSTALL_DIR ${LIBDIR}/yamlcpp
+  URL ${YAMLCPP_URI}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  URL_HASH MD5=${YAMLCPP_HASH}
+  PREFIX ${BUILD_DIR}/yamlcpp
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/yamlcpp ${DEFAULT_CMAKE_FLAGS} ${YAMLCPP_EXTRA_ARGS}
+  INSTALL_DIR ${LIBDIR}/yamlcpp
 )
diff --git a/build_files/build_environment/cmake/zlib.cmake b/build_files/build_environment/cmake/zlib.cmake
index 3c07fb3c08a3b21b5067775ac425f6312f715c67..f8594bd037cef4443c3ca792cf55ca9563ebcfd0 100644
--- a/build_files/build_environment/cmake/zlib.cmake
+++ b/build_files/build_environment/cmake/zlib.cmake
@@ -17,31 +17,31 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_zlib
-	URL ${ZLIB_URI}
-	URL_HASH MD5=${ZLIB_HASH}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	PREFIX ${BUILD_DIR}/zlib
-	CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib ${DEFAULT_CMAKE_FLAGS}
-	INSTALL_DIR ${LIBDIR}/zlib
+  URL ${ZLIB_URI}
+  URL_HASH MD5=${ZLIB_HASH}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  PREFIX ${BUILD_DIR}/zlib
+  CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib ${DEFAULT_CMAKE_FLAGS}
+  INSTALL_DIR ${LIBDIR}/zlib
 )
 
 if (WIN32)
-	if(BUILD_MODE STREQUAL Release)
-		ExternalProject_Add_Step(external_zlib after_install
-			COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstatic${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
-			COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/zlib/include/ ${HARVEST_TARGET}/zlib/include/
-			DEPENDEES install
-		)
-	endif()
-	if(BUILD_MODE STREQUAL Debug)
-		ExternalProject_Add_Step(external_zlib after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
-		DEPENDEES install
-		)
-	endif()
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_zlib after_install
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstatic${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/zlib/include/ ${HARVEST_TARGET}/zlib/include/
+      DEPENDEES install
+    )
+  endif()
+  if(BUILD_MODE STREQUAL Debug)
+    ExternalProject_Add_Step(external_zlib after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT} ${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
+    DEPENDEES install
+    )
+  endif()
 else()
-	ExternalProject_Add_Step(external_zlib after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/libz.a ${LIBDIR}/zlib/lib/libz_pic.a
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_zlib after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/zlib/lib/libz.a ${LIBDIR}/zlib/lib/libz_pic.a
+    DEPENDEES install
+  )
 endif()
diff --git a/build_files/build_environment/cmake/zlib_mingw.cmake b/build_files/build_environment/cmake/zlib_mingw.cmake
index 56578857a47a613bd505f33197ec854ae4dd6f95..1a7bc1dc51b73a0ba356149690cc8a01dbdef546 100644
--- a/build_files/build_environment/cmake/zlib_mingw.cmake
+++ b/build_files/build_environment/cmake/zlib_mingw.cmake
@@ -17,23 +17,23 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ExternalProject_Add(external_zlib_mingw
-	URL ${ZLIB_URI}
-	URL_HASH MD5=${ZLIB_HASH}
-	DOWNLOAD_DIR ${DOWNLOAD_DIR}
-	PREFIX ${BUILD_DIR}/zlib_mingw
-	CONFIGURE_COMMAND echo .
-	BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/ && make -f win32/makefile.gcc -j${MAKE_THREADS}
-	INSTALL_COMMAND echo .
-	INSTALL_DIR ${LIBDIR}/zlib_mingw
+  URL ${ZLIB_URI}
+  URL_HASH MD5=${ZLIB_HASH}
+  DOWNLOAD_DIR ${DOWNLOAD_DIR}
+  PREFIX ${BUILD_DIR}/zlib_mingw
+  CONFIGURE_COMMAND echo .
+  BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/ && make -f win32/makefile.gcc -j${MAKE_THREADS}
+  INSTALL_COMMAND echo .
+  INSTALL_DIR ${LIBDIR}/zlib_mingw
 )
 
 if(BUILD_MODE STREQUAL Release)
-	ExternalProject_Add_Step(external_zlib_mingw after_install
-		COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/libz.a ${LIBDIR}/zlib/lib/z.lib
-		DEPENDEES install
-	)
+  ExternalProject_Add_Step(external_zlib_mingw after_install
+    COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/zlib_mingw/src/external_zlib_mingw/libz.a ${LIBDIR}/zlib/lib/z.lib
+    DEPENDEES install
+  )
 endif()
 
 if(MSVC)
-	set_target_properties(external_zlib_mingw PROPERTIES FOLDER Mingw)
+  set_target_properties(external_zlib_mingw PROPERTIES FOLDER Mingw)
 endif()
diff --git a/build_files/buildbot/config/blender_linux.cmake b/build_files/buildbot/config/blender_linux.cmake
index 44048f70135354a1415e582bba79373eeab4720e..52d4b864576f33074732e3aea21673b1d892830a 100644
--- a/build_files/buildbot/config/blender_linux.cmake
+++ b/build_files/buildbot/config/blender_linux.cmake
@@ -6,29 +6,29 @@ include("${CMAKE_CURRENT_LIST_DIR}/../../cmake/config/blender_release.cmake")
 # Some of the paths will depend on this
 
 if(EXISTS "/lib/x86_64-linux-gnu/libc-2.24.so")
-	message(STATUS "Building in GLibc-2.24 environment")
-	set(GLIBC "2.24")
-	set(MULTILIB "/x86_64-linux-gnu")
-	set(LIBDIR_NAME "linux_x86_64")
+  message(STATUS "Building in GLibc-2.24 environment")
+  set(GLIBC "2.24")
+  set(MULTILIB "/x86_64-linux-gnu")
+  set(LIBDIR_NAME "linux_x86_64")
 elseif(EXISTS "/lib/i386-linux-gnu//libc-2.24.so")
-	message(STATUS "Building in GLibc-2.24 environment")
-	set(GLIBC "2.24")
-	set(MULTILIB "/i386-linux-gnu")
-	set(LIBDIR_NAME "linux_i686")
+  message(STATUS "Building in GLibc-2.24 environment")
+  set(GLIBC "2.24")
+  set(MULTILIB "/i386-linux-gnu")
+  set(LIBDIR_NAME "linux_i686")
 elseif(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so")
-	message(STATUS "Building in GLibc-2.19 environment")
-	set(GLIBC "2.19")
-	set(MULTILIB "/x86_64-linux-gnu")
+  message(STATUS "Building in GLibc-2.19 environment")
+  set(GLIBC "2.19")
+  set(MULTILIB "/x86_64-linux-gnu")
 elseif(EXISTS "/lib/i386-linux-gnu//libc-2.19.so")
-	message(STATUS "Building in GLibc-2.19 environment")
-	set(GLIBC "2.19")
-	set(MULTILIB "/i386-linux-gnu")
+  message(STATUS "Building in GLibc-2.19 environment")
+  set(GLIBC "2.19")
+  set(MULTILIB "/i386-linux-gnu")
 elseif(EXISTS "/lib/libc-2.11.3.so")
-	message(STATUS "Building in GLibc-2.11 environment")
-	set(GLIBC "2.11")
-	set(MULTILIB "")
+  message(STATUS "Building in GLibc-2.11 environment")
+  set(GLIBC "2.11")
+  set(MULTILIB "")
 else()
-	message(FATAL_ERROR "Unknown build environment")
+  message(FATAL_ERROR "Unknown build environment")
 endif()
 
 # Default to only build Blender
@@ -67,18 +67,18 @@ set(Boost_USE_STATIC_LIBS    ON CACHE BOOL "" FORCE)
 # FFmpeg libraries
 set(FFMPEG                   "/opt/lib/ffmpeg" CACHE STRING "" FORCE)
 set(FFMPEG_LIBRARIES
-	avdevice avformat avcodec avutil avfilter swscale swresample
-	/usr/lib${MULTILIB}/libxvidcore.a
-	/usr/lib${MULTILIB}/libx264.a
-	/usr/lib${MULTILIB}/libmp3lame.a
-	/usr/lib${MULTILIB}/libvpx.a
-	/usr/lib${MULTILIB}/libvorbis.a
-	/usr/lib${MULTILIB}/libogg.a
-	/usr/lib${MULTILIB}/libvorbisenc.a
-	/usr/lib${MULTILIB}/libtheora.a
-	/usr/lib${MULTILIB}/libschroedinger-1.0.a
-	/usr/lib${MULTILIB}/liborc-0.4.a
-	CACHE STRING "" FORCE
+  avdevice avformat avcodec avutil avfilter swscale swresample
+  /usr/lib${MULTILIB}/libxvidcore.a
+  /usr/lib${MULTILIB}/libx264.a
+  /usr/lib${MULTILIB}/libmp3lame.a
+  /usr/lib${MULTILIB}/libvpx.a
+  /usr/lib${MULTILIB}/libvorbis.a
+  /usr/lib${MULTILIB}/libogg.a
+  /usr/lib${MULTILIB}/libvorbisenc.a
+  /usr/lib${MULTILIB}/libtheora.a
+  /usr/lib${MULTILIB}/libschroedinger-1.0.a
+  /usr/lib${MULTILIB}/liborc-0.4.a
+  CACHE STRING "" FORCE
 )
 
 # SndFile libraries
@@ -88,9 +88,9 @@ set(SNDFILE_LIBRARY          "/usr/lib${MULTILIB}/libsndfile.a;/usr/lib${MULTILI
 set(OPENAL_ROOT_DIR           "/opt/lib/openal" CACHE STRING "" FORCE)
 set(OPENAL_INCLUDE_DIR        "${OPENAL_ROOT_DIR}/include/AL" CACHE STRING "" FORCE)
 set(OPENAL_LIBRARY
-	${OPENAL_ROOT_DIR}/lib/libopenal.a
-	${OPENAL_ROOT_DIR}/lib/libcommon.a
-	CACHE STRING "" FORCE
+  ${OPENAL_ROOT_DIR}/lib/libopenal.a
+  ${OPENAL_ROOT_DIR}/lib/libcommon.a
+  CACHE STRING "" FORCE
 )
 
 # OpenCollada libraries
@@ -112,15 +112,15 @@ set(FREETYPE_LIBRARY "/usr/lib${MULTILIB}/libfreetype.a" CACHE STRING "" FORCE)
 
 # OpenImageIO
 if(GLIBC EQUAL "2.19")
-	set(OPENIMAGEIO_LIBRARY
-		/opt/lib/oiio/lib/libOpenImageIO.a
-		/opt/lib/oiio/lib/libOpenImageIO_Util.a
-		/usr/lib${MULTILIB}/libwebp.a
-		/usr/lib${MULTILIB}/liblzma.a
-		/usr/lib${MULTILIB}/libjbig.a
-		${FREETYPE_LIBRARY}
-		CACHE STRING "" FORCE
-	)
+  set(OPENIMAGEIO_LIBRARY
+    /opt/lib/oiio/lib/libOpenImageIO.a
+    /opt/lib/oiio/lib/libOpenImageIO_Util.a
+    /usr/lib${MULTILIB}/libwebp.a
+    /usr/lib${MULTILIB}/liblzma.a
+    /usr/lib${MULTILIB}/libjbig.a
+    ${FREETYPE_LIBRARY}
+    CACHE STRING "" FORCE
+  )
 endif()
 
 # OpenSubdiv libraries
@@ -151,13 +151,13 @@ set(ZLIB_LIBRARY        "/usr/lib${MULTILIB}/libz.a"     CACHE STRING "" FORCE)
 
 # OpenVDB
 set(OPENVDB_LIBRARY
-	/opt/lib/openvdb/lib/libopenvdb.a
-	CACHE BOOL "" FORCE
+  /opt/lib/openvdb/lib/libopenvdb.a
+  CACHE BOOL "" FORCE
 )
 
 set(BLOSC_LIBRARY
-	/opt/lib/blosc/lib/libblosc.a
-	CACHE BOOL "" FORCE
+  /opt/lib/blosc/lib/libblosc.a
+  CACHE BOOL "" FORCE
 )
 
 else()
diff --git a/build_files/cmake/Modules/FindGLEW.cmake b/build_files/cmake/Modules/FindGLEW.cmake
index b36a3272e3dbf25679f324dbb1d558aa820eb4a1..593b1693fd051899bec7e44e8d845c51fd96069f 100644
--- a/build_files/cmake/Modules/FindGLEW.cmake
+++ b/build_files/cmake/Modules/FindGLEW.cmake
@@ -23,7 +23,7 @@
 
 # If GLEW_ROOT_DIR was defined in the environment, use it.
 IF(NOT GLEW_ROOT_DIR AND NOT $ENV{GLEW_ROOT_DIR} STREQUAL "")
-	SET(GLEW_ROOT_DIR $ENV{GLEW_ROOT_DIR})
+  SET(GLEW_ROOT_DIR $ENV{GLEW_ROOT_DIR})
 ENDIF()
 
 SET(_glew_SEARCH_DIRS
diff --git a/build_files/cmake/Modules/FindLLVM.cmake b/build_files/cmake/Modules/FindLLVM.cmake
index a40a71cb58eb33a2d4ae4f8b4aba20e8956420b6..141a91c050889dee4b959ea6451cb89557934eae 100644
--- a/build_files/cmake/Modules/FindLLVM.cmake
+++ b/build_files/cmake/Modules/FindLLVM.cmake
@@ -22,65 +22,65 @@
 #=============================================================================
 
 if(LLVM_ROOT_DIR)
-	if(DEFINED LLVM_VERSION)
-		find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION} HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
-	endif()
-	if(NOT LLVM_CONFIG)
-		find_program(LLVM_CONFIG llvm-config HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
-	endif()
+  if(DEFINED LLVM_VERSION)
+    find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION} HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
+  endif()
+  if(NOT LLVM_CONFIG)
+    find_program(LLVM_CONFIG llvm-config HINTS ${LLVM_ROOT_DIR}/bin NO_CMAKE_PATH)
+  endif()
 else()
-	if(DEFINED LLVM_VERSION)
+  if(DEFINED LLVM_VERSION)
         message(running llvm-config-${LLVM_VERSION})
-		find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION})
-	endif()
-	if(NOT LLVM_CONFIG)
-		find_program(LLVM_CONFIG llvm-config)
-	endif()
+    find_program(LLVM_CONFIG llvm-config-${LLVM_VERSION})
+  endif()
+  if(NOT LLVM_CONFIG)
+    find_program(LLVM_CONFIG llvm-config)
+  endif()
 endif()
 
 if(NOT DEFINED LLVM_VERSION)
-	execute_process(COMMAND ${LLVM_CONFIG} --version
-					OUTPUT_VARIABLE LLVM_VERSION
-					OUTPUT_STRIP_TRAILING_WHITESPACE)
-	set(LLVM_VERSION ${LLVM_VERSION} CACHE STRING "Version of LLVM to use")
+  execute_process(COMMAND ${LLVM_CONFIG} --version
+          OUTPUT_VARIABLE LLVM_VERSION
+          OUTPUT_STRIP_TRAILING_WHITESPACE)
+  set(LLVM_VERSION ${LLVM_VERSION} CACHE STRING "Version of LLVM to use")
 endif()
 if(NOT LLVM_ROOT_DIR)
-	execute_process(COMMAND ${LLVM_CONFIG} --prefix
-					OUTPUT_VARIABLE LLVM_ROOT_DIR
-					OUTPUT_STRIP_TRAILING_WHITESPACE)
-	set(LLVM_ROOT_DIR ${LLVM_ROOT_DIR} CACHE PATH "Path to the LLVM installation")
+  execute_process(COMMAND ${LLVM_CONFIG} --prefix
+          OUTPUT_VARIABLE LLVM_ROOT_DIR
+          OUTPUT_STRIP_TRAILING_WHITESPACE)
+  set(LLVM_ROOT_DIR ${LLVM_ROOT_DIR} CACHE PATH "Path to the LLVM installation")
 endif()
 if(NOT LLVM_LIBPATH)
-	execute_process(COMMAND ${LLVM_CONFIG} --libdir
-					OUTPUT_VARIABLE LLVM_LIBPATH
-					OUTPUT_STRIP_TRAILING_WHITESPACE)
-	set(LLVM_LIBPATH ${LLVM_LIBPATH} CACHE PATH "Path to the LLVM library path")
-	mark_as_advanced(LLVM_LIBPATH)
+  execute_process(COMMAND ${LLVM_CONFIG} --libdir
+          OUTPUT_VARIABLE LLVM_LIBPATH
+          OUTPUT_STRIP_TRAILING_WHITESPACE)
+  set(LLVM_LIBPATH ${LLVM_LIBPATH} CACHE PATH "Path to the LLVM library path")
+  mark_as_advanced(LLVM_LIBPATH)
 endif()
 
 if(LLVM_STATIC)
-	find_library(LLVM_LIBRARY
-	             NAMES LLVMAnalysis # first of a whole bunch of libs to get
-	             PATHS ${LLVM_LIBPATH})
+  find_library(LLVM_LIBRARY
+               NAMES LLVMAnalysis # first of a whole bunch of libs to get
+               PATHS ${LLVM_LIBPATH})
 else()
-	find_library(LLVM_LIBRARY
-	             NAMES
-	               LLVM-${LLVM_VERSION}
-	               LLVMAnalysis  # check for the static library as a fall-back
-	             PATHS ${LLVM_LIBPATH})
+  find_library(LLVM_LIBRARY
+               NAMES
+                 LLVM-${LLVM_VERSION}
+                 LLVMAnalysis  # check for the static library as a fall-back
+               PATHS ${LLVM_LIBPATH})
 endif()
 
 
 if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
-	if(LLVM_STATIC)
-		# if static LLVM libraries were requested, use llvm-config to generate
-		# the list of what libraries we need, and substitute that in the right
-		# way for LLVM_LIBRARY.
-		execute_process(COMMAND ${LLVM_CONFIG} --libfiles
-		                OUTPUT_VARIABLE LLVM_LIBRARY
-		                OUTPUT_STRIP_TRAILING_WHITESPACE)
-		string(REPLACE " " ";" LLVM_LIBRARY "${LLVM_LIBRARY}")
-	endif()
+  if(LLVM_STATIC)
+    # if static LLVM libraries were requested, use llvm-config to generate
+    # the list of what libraries we need, and substitute that in the right
+    # way for LLVM_LIBRARY.
+    execute_process(COMMAND ${LLVM_CONFIG} --libfiles
+                    OUTPUT_VARIABLE LLVM_LIBRARY
+                    OUTPUT_STRIP_TRAILING_WHITESPACE)
+    string(REPLACE " " ";" LLVM_LIBRARY "${LLVM_LIBRARY}")
+  endif()
 endif()
 
 
diff --git a/build_files/cmake/Modules/FindSndFile.cmake b/build_files/cmake/Modules/FindSndFile.cmake
index ef6fb73598f7ca406208b5aa36e0cee0b8ead154..eabc08b064584400117c36c902f4b505c9dc0bd6 100644
--- a/build_files/cmake/Modules/FindSndFile.cmake
+++ b/build_files/cmake/Modules/FindSndFile.cmake
@@ -24,11 +24,11 @@
 
 # If LIBSNDFILE_ROOT_DIR was defined in the environment, use it.
 IF(NOT LIBSNDFILE_ROOT_DIR AND NOT $ENV{LIBSNDFILE_ROOT_DIR} STREQUAL "")
-	SET(LIBSNDFILE_ROOT_DIR $ENV{LIBSNDFILE_ROOT_DIR})
+  SET(LIBSNDFILE_ROOT_DIR $ENV{LIBSNDFILE_ROOT_DIR})
 ENDIF()
 
 SET(_sndfile_SEARCH_DIRS
-	${LIBSNDFILE_ROOT_DIR}
+  ${LIBSNDFILE_ROOT_DIR}
   /usr/local
   /sw # Fink
   /opt/local # DarwinPorts
@@ -54,14 +54,14 @@ FIND_LIBRARY(LIBSNDFILE_LIBRARY
 # all listed variables are TRUE
 INCLUDE(FindPackageHandleStandardArgs)
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(SndFile DEFAULT_MSG
-	LIBSNDFILE_LIBRARY LIBSNDFILE_INCLUDE_DIR)
+  LIBSNDFILE_LIBRARY LIBSNDFILE_INCLUDE_DIR)
 
 IF(LIBSNDFILE_FOUND)
-	SET(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBRARY})
-	SET(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE_INCLUDE_DIR})
+  SET(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBRARY})
+  SET(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE_INCLUDE_DIR})
 ENDIF(LIBSNDFILE_FOUND)
 
 MARK_AS_ADVANCED(
-	LIBSNDFILE_INCLUDE_DIR
-	LIBSNDFILE_LIBRARY
+  LIBSNDFILE_INCLUDE_DIR
+  LIBSNDFILE_LIBRARY
 )
diff --git a/build_files/cmake/Modules/GTestTesting.cmake b/build_files/cmake/Modules/GTestTesting.cmake
index dd80013cb912cf5339339a1e769a2df8d928d49f..eb06e00bf9e3e3a55744ef91b7312290af3ee985 100644
--- a/build_files/cmake/Modules/GTestTesting.cmake
+++ b/build_files/cmake/Modules/GTestTesting.cmake
@@ -13,55 +13,55 @@
 #=============================================================================
 
 macro(BLENDER_SRC_GTEST_EX NAME SRC EXTRA_LIBS DO_ADD_TEST)
-	if(WITH_GTESTS)
-		get_property(_current_include_directories
-		             DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-		             PROPERTY INCLUDE_DIRECTORIES)
-		set(TEST_INC
-			${_current_include_directories}
-			${CMAKE_SOURCE_DIR}/tests/gtests
-			${GLOG_INCLUDE_DIRS}
-			${GFLAGS_INCLUDE_DIRS}
-			${CMAKE_SOURCE_DIR}/extern/gtest/include
-			${CMAKE_SOURCE_DIR}/extern/gmock/include
-		)
-		unset(_current_include_directories)
+  if(WITH_GTESTS)
+    get_property(_current_include_directories
+                 DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+                 PROPERTY INCLUDE_DIRECTORIES)
+    set(TEST_INC
+      ${_current_include_directories}
+      ${CMAKE_SOURCE_DIR}/tests/gtests
+      ${GLOG_INCLUDE_DIRS}
+      ${GFLAGS_INCLUDE_DIRS}
+      ${CMAKE_SOURCE_DIR}/extern/gtest/include
+      ${CMAKE_SOURCE_DIR}/extern/gmock/include
+    )
+    unset(_current_include_directories)
 
-		add_executable(${NAME}_test ${SRC})
-		target_link_libraries(${NAME}_test
-		                      ${EXTRA_LIBS}
-		                      ${PLATFORM_LINKLIBS}
-		                      bf_testing_main
-		                      bf_intern_eigen
-		                      bf_intern_guardedalloc
-		                      extern_gtest
-		                      extern_gmock
-		                      # needed for glog
-		                      ${PTHREADS_LIBRARIES}
-		                      ${GLOG_LIBRARIES}
-		                      ${GFLAGS_LIBRARIES})
-		if(WITH_OPENMP_STATIC)
-			target_link_libraries(${NAME}_test ${OpenMP_LIBRARIES})
-		endif()
-		set_target_properties(${NAME}_test PROPERTIES
-		                      RUNTIME_OUTPUT_DIRECTORY         "${TESTS_OUTPUT_DIR}"
-		                      RUNTIME_OUTPUT_DIRECTORY_RELEASE "${TESTS_OUTPUT_DIR}"
-		                      RUNTIME_OUTPUT_DIRECTORY_DEBUG   "${TESTS_OUTPUT_DIR}"
-		                      INCLUDE_DIRECTORIES              "${TEST_INC}")
-		if(${DO_ADD_TEST})
-			add_test(NAME ${NAME}_test COMMAND ${TESTS_OUTPUT_DIR}/${NAME}_test WORKING_DIRECTORY $<TARGET_FILE_DIR:blender>)
-		endif()
-	endif()
+    add_executable(${NAME}_test ${SRC})
+    target_link_libraries(${NAME}_test
+                          ${EXTRA_LIBS}
+                          ${PLATFORM_LINKLIBS}
+                          bf_testing_main
+                          bf_intern_eigen
+                          bf_intern_guardedalloc
+                          extern_gtest
+                          extern_gmock
+                          # needed for glog
+                          ${PTHREADS_LIBRARIES}
+                          ${GLOG_LIBRARIES}
+                          ${GFLAGS_LIBRARIES})
+    if(WITH_OPENMP_STATIC)
+      target_link_libraries(${NAME}_test ${OpenMP_LIBRARIES})
+    endif()
+    set_target_properties(${NAME}_test PROPERTIES
+                          RUNTIME_OUTPUT_DIRECTORY         "${TESTS_OUTPUT_DIR}"
+                          RUNTIME_OUTPUT_DIRECTORY_RELEASE "${TESTS_OUTPUT_DIR}"
+                          RUNTIME_OUTPUT_DIRECTORY_DEBUG   "${TESTS_OUTPUT_DIR}"
+                          INCLUDE_DIRECTORIES              "${TEST_INC}")
+    if(${DO_ADD_TEST})
+      add_test(NAME ${NAME}_test COMMAND ${TESTS_OUTPUT_DIR}/${NAME}_test WORKING_DIRECTORY $<TARGET_FILE_DIR:blender>)
+    endif()
+  endif()
 endmacro()
 
 macro(BLENDER_SRC_GTEST NAME SRC EXTRA_LIBS)
-	BLENDER_SRC_GTEST_EX("${NAME}" "${SRC}" "${EXTRA_LIBS}" "TRUE")
+  BLENDER_SRC_GTEST_EX("${NAME}" "${SRC}" "${EXTRA_LIBS}" "TRUE")
 endmacro()
 
 macro(BLENDER_TEST NAME EXTRA_LIBS)
-	BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "TRUE")
+  BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "TRUE")
 endmacro()
 
 macro(BLENDER_TEST_PERFORMANCE NAME EXTRA_LIBS)
-	BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "FALSE")
+  BLENDER_SRC_GTEST_EX("${NAME}" "${NAME}_test.cc" "${EXTRA_LIBS}" "FALSE")
 endmacro()
diff --git a/build_files/cmake/RpmBuild.cmake b/build_files/cmake/RpmBuild.cmake
index 4e3047b4c6c6e3721d8d5a96e4b8d97d3dfef4ed..2ece06bcad3072951214b1bce234d7ca6dcc0b5a 100644
--- a/build_files/cmake/RpmBuild.cmake
+++ b/build_files/cmake/RpmBuild.cmake
@@ -4,22 +4,22 @@
 
 if(NOT DEFINED RPMBUILD)
 
-	find_program(RPMBUILD
-		NAMES rpmbuild
-		PATHS "/usr/bin")
+  find_program(RPMBUILD
+    NAMES rpmbuild
+    PATHS "/usr/bin")
 
-	mark_as_advanced(RPMBUILD)
+  mark_as_advanced(RPMBUILD)
 
-	if(RPMBUILD)
-		message(STATUS "RPM Build Found: ${RPMBUILD}")
-	else()
-		message(STATUS "RPM Build Not Found (rpmbuild). RPM generation will not be available")
-	endif()
+  if(RPMBUILD)
+    message(STATUS "RPM Build Found: ${RPMBUILD}")
+  else()
+    message(STATUS "RPM Build Not Found (rpmbuild). RPM generation will not be available")
+  endif()
 
 endif()
 
 if(RPMBUILD)
-	set(RPMBUILD_FOUND TRUE)
+  set(RPMBUILD_FOUND TRUE)
 else()
-	set(RPMBUILD_FOUND FALSE)
+  set(RPMBUILD_FOUND FALSE)
 endif()
diff --git a/build_files/cmake/buildinfo.cmake b/build_files/cmake/buildinfo.cmake
index 12bbf49b7472d9208eab85c127e1eac95d9eb860..ec43534528af8f0ec3034bd4b76ab888a5d43ca1 100644
--- a/build_files/cmake/buildinfo.cmake
+++ b/build_files/cmake/buildinfo.cmake
@@ -14,162 +14,162 @@ set(MY_WC_COMMIT_TIMESTAMP 0)
 
 # Guess if this is a git working copy and then look up the revision
 if(EXISTS ${SOURCE_DIR}/.git)
-	execute_process(COMMAND git rev-parse --abbrev-ref HEAD
-	                WORKING_DIRECTORY ${SOURCE_DIR}
-	                OUTPUT_VARIABLE MY_WC_BRANCH
-	                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-	if(MY_WC_BRANCH STREQUAL "HEAD")
-		# Detached HEAD, check whether commit hash is reachable
-		# in the master branch
-		execute_process(COMMAND git rev-parse --short=12 HEAD
-		                WORKING_DIRECTORY ${SOURCE_DIR}
-		                OUTPUT_VARIABLE MY_WC_HASH
-		                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-		execute_process(COMMAND git branch --list master blender-v* --contains ${MY_WC_HASH}
-		                WORKING_DIRECTORY ${SOURCE_DIR}
-		                OUTPUT_VARIABLE _git_contains_check
-		                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-		if(NOT _git_contains_check STREQUAL "")
-			set(MY_WC_BRANCH "master")
-		else()
-			execute_process(COMMAND git show-ref --tags -d
-			                WORKING_DIRECTORY ${SOURCE_DIR}
-			                OUTPUT_VARIABLE _git_tag_hashes
-			                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-			execute_process(COMMAND git rev-parse HEAD
-			                WORKING_DIRECTORY ${SOURCE_DIR}
-			                OUTPUT_VARIABLE _git_head_hash
-			                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-			if(_git_tag_hashes MATCHES "${_git_head_hash}")
-				set(MY_WC_BRANCH "master")
-			else()
-				execute_process(COMMAND git branch --contains ${MY_WC_HASH}
-				                WORKING_DIRECTORY ${SOURCE_DIR}
-				                OUTPUT_VARIABLE _git_contains_branches
-				                OUTPUT_STRIP_TRAILING_WHITESPACE)
-				string(REGEX REPLACE "^\\*[ \t]+" "" _git_contains_branches "${_git_contains_branches}")
-				string(REGEX REPLACE "[\r\n]+" ";" _git_contains_branches "${_git_contains_branches}")
-				string(REGEX REPLACE ";[ \t]+" ";" _git_contains_branches "${_git_contains_branches}")
-				foreach(_branch ${_git_contains_branches})
-					if(NOT "${_branch}" MATCHES "\\(HEAD.*")
-						set(MY_WC_BRANCH "${_branch}")
-						break()
-					endif()
-				endforeach()
-				unset(_branch)
-				unset(_git_contains_branches)
-			endif()
-
-			unset(_git_tag_hashes)
-			unset(_git_head_hashs)
-		endif()
-
-
-		unset(_git_contains_check)
-	else()
-		execute_process(COMMAND git log HEAD..@{u}
-		                WORKING_DIRECTORY ${SOURCE_DIR}
-		                OUTPUT_VARIABLE _git_below_check
-		                OUTPUT_STRIP_TRAILING_WHITESPACE
-		                ERROR_QUIET)
-		if(NOT _git_below_check STREQUAL "")
-			# If there're commits between HEAD and upstream this means
-			# that we're reset-ed to older revision. Use it's hash then.
-			execute_process(COMMAND git rev-parse --short=12 HEAD
-			                WORKING_DIRECTORY ${SOURCE_DIR}
-			                OUTPUT_VARIABLE MY_WC_HASH
-			                OUTPUT_STRIP_TRAILING_WHITESPACE)
-		else()
-			execute_process(COMMAND git rev-parse --short=12 @{u}
-			                WORKING_DIRECTORY ${SOURCE_DIR}
-			                OUTPUT_VARIABLE MY_WC_HASH
-			                OUTPUT_STRIP_TRAILING_WHITESPACE
-			                ERROR_QUIET)
-
-			if(MY_WC_HASH STREQUAL "")
-				# Local branch, not set to upstream.
-				# Well, let's use HEAD for now
-				execute_process(COMMAND git rev-parse --short=12 HEAD
-				                WORKING_DIRECTORY ${SOURCE_DIR}
-				                OUTPUT_VARIABLE MY_WC_HASH
-				                OUTPUT_STRIP_TRAILING_WHITESPACE)
-			endif()
-		endif()
-
-		if(MY_WC_BRANCH MATCHES "^blender-v")
-			set(MY_WC_BRANCH "master")
-		endif()
-
-		unset(_git_below_check)
-	endif()
-
-	execute_process(COMMAND git log -1 --format=%ct
-	                WORKING_DIRECTORY ${SOURCE_DIR}
-	                OUTPUT_VARIABLE MY_WC_COMMIT_TIMESTAMP
-	                OUTPUT_STRIP_TRAILING_WHITESPACE)
-	# May fail in rare cases
-	if(MY_WC_COMMIT_TIMESTAMP STREQUAL "")
-		set(MY_WC_COMMIT_TIMESTAMP 0)
-	endif()
-
-	# Update GIT index before getting dirty files
-	execute_process(COMMAND git update-index -q --refresh
-	                WORKING_DIRECTORY ${SOURCE_DIR}
-	                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-	execute_process(COMMAND git diff-index --name-only HEAD --
-	                WORKING_DIRECTORY ${SOURCE_DIR}
-	                OUTPUT_VARIABLE _git_changed_files
-	                OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-	if(NOT _git_changed_files STREQUAL "")
-		set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
-	else()
-		# Unpushed commits are also considered local modifications
-		execute_process(COMMAND git log @{u}..
-		                WORKING_DIRECTORY ${SOURCE_DIR}
-		                OUTPUT_VARIABLE _git_unpushed_log
-		                OUTPUT_STRIP_TRAILING_WHITESPACE
-		                ERROR_QUIET)
-		if(NOT _git_unpushed_log STREQUAL "")
-			set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
-		endif()
-		unset(_git_unpushed_log)
-	endif()
-
-	unset(_git_changed_files)
+  execute_process(COMMAND git rev-parse --abbrev-ref HEAD
+                  WORKING_DIRECTORY ${SOURCE_DIR}
+                  OUTPUT_VARIABLE MY_WC_BRANCH
+                  OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+  if(MY_WC_BRANCH STREQUAL "HEAD")
+    # Detached HEAD, check whether commit hash is reachable
+    # in the master branch
+    execute_process(COMMAND git rev-parse --short=12 HEAD
+                    WORKING_DIRECTORY ${SOURCE_DIR}
+                    OUTPUT_VARIABLE MY_WC_HASH
+                    OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    execute_process(COMMAND git branch --list master blender-v* --contains ${MY_WC_HASH}
+                    WORKING_DIRECTORY ${SOURCE_DIR}
+                    OUTPUT_VARIABLE _git_contains_check
+                    OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    if(NOT _git_contains_check STREQUAL "")
+      set(MY_WC_BRANCH "master")
+    else()
+      execute_process(COMMAND git show-ref --tags -d
+                      WORKING_DIRECTORY ${SOURCE_DIR}
+                      OUTPUT_VARIABLE _git_tag_hashes
+                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+      execute_process(COMMAND git rev-parse HEAD
+                      WORKING_DIRECTORY ${SOURCE_DIR}
+                      OUTPUT_VARIABLE _git_head_hash
+                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+      if(_git_tag_hashes MATCHES "${_git_head_hash}")
+        set(MY_WC_BRANCH "master")
+      else()
+        execute_process(COMMAND git branch --contains ${MY_WC_HASH}
+                        WORKING_DIRECTORY ${SOURCE_DIR}
+                        OUTPUT_VARIABLE _git_contains_branches
+                        OUTPUT_STRIP_TRAILING_WHITESPACE)
+        string(REGEX REPLACE "^\\*[ \t]+" "" _git_contains_branches "${_git_contains_branches}")
+        string(REGEX REPLACE "[\r\n]+" ";" _git_contains_branches "${_git_contains_branches}")
+        string(REGEX REPLACE ";[ \t]+" ";" _git_contains_branches "${_git_contains_branches}")
+        foreach(_branch ${_git_contains_branches})
+          if(NOT "${_branch}" MATCHES "\\(HEAD.*")
+            set(MY_WC_BRANCH "${_branch}")
+            break()
+          endif()
+        endforeach()
+        unset(_branch)
+        unset(_git_contains_branches)
+      endif()
+
+      unset(_git_tag_hashes)
+      unset(_git_head_hashs)
+    endif()
+
+
+    unset(_git_contains_check)
+  else()
+    execute_process(COMMAND git log HEAD..@{u}
+                    WORKING_DIRECTORY ${SOURCE_DIR}
+                    OUTPUT_VARIABLE _git_below_check
+                    OUTPUT_STRIP_TRAILING_WHITESPACE
+                    ERROR_QUIET)
+    if(NOT _git_below_check STREQUAL "")
+      # If there're commits between HEAD and upstream this means
+      # that we're reset-ed to older revision. Use it's hash then.
+      execute_process(COMMAND git rev-parse --short=12 HEAD
+                      WORKING_DIRECTORY ${SOURCE_DIR}
+                      OUTPUT_VARIABLE MY_WC_HASH
+                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+    else()
+      execute_process(COMMAND git rev-parse --short=12 @{u}
+                      WORKING_DIRECTORY ${SOURCE_DIR}
+                      OUTPUT_VARIABLE MY_WC_HASH
+                      OUTPUT_STRIP_TRAILING_WHITESPACE
+                      ERROR_QUIET)
+
+      if(MY_WC_HASH STREQUAL "")
+        # Local branch, not set to upstream.
+        # Well, let's use HEAD for now
+        execute_process(COMMAND git rev-parse --short=12 HEAD
+                        WORKING_DIRECTORY ${SOURCE_DIR}
+                        OUTPUT_VARIABLE MY_WC_HASH
+                        OUTPUT_STRIP_TRAILING_WHITESPACE)
+      endif()
+    endif()
+
+    if(MY_WC_BRANCH MATCHES "^blender-v")
+      set(MY_WC_BRANCH "master")
+    endif()
+
+    unset(_git_below_check)
+  endif()
+
+  execute_process(COMMAND git log -1 --format=%ct
+                  WORKING_DIRECTORY ${SOURCE_DIR}
+                  OUTPUT_VARIABLE MY_WC_COMMIT_TIMESTAMP
+                  OUTPUT_STRIP_TRAILING_WHITESPACE)
+  # May fail in rare cases
+  if(MY_WC_COMMIT_TIMESTAMP STREQUAL "")
+    set(MY_WC_COMMIT_TIMESTAMP 0)
+  endif()
+
+  # Update GIT index before getting dirty files
+  execute_process(COMMAND git update-index -q --refresh
+                  WORKING_DIRECTORY ${SOURCE_DIR}
+                  OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+  execute_process(COMMAND git diff-index --name-only HEAD --
+                  WORKING_DIRECTORY ${SOURCE_DIR}
+                  OUTPUT_VARIABLE _git_changed_files
+                  OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+  if(NOT _git_changed_files STREQUAL "")
+    set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
+  else()
+    # Unpushed commits are also considered local modifications
+    execute_process(COMMAND git log @{u}..
+                    WORKING_DIRECTORY ${SOURCE_DIR}
+                    OUTPUT_VARIABLE _git_unpushed_log
+                    OUTPUT_STRIP_TRAILING_WHITESPACE
+                    ERROR_QUIET)
+    if(NOT _git_unpushed_log STREQUAL "")
+      set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
+    endif()
+    unset(_git_unpushed_log)
+  endif()
+
+  unset(_git_changed_files)
 endif()
 
 # BUILD_PLATFORM and BUILD_PLATFORM are taken from CMake
 # but BUILD_DATE and BUILD_TIME are platform dependent
 if(UNIX)
-	if(NOT BUILD_DATE)
-		execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
-	endif()
-	if(NOT BUILD_TIME)
-		execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
-	endif()
+  if(NOT BUILD_DATE)
+    execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
+  endif()
+  if(NOT BUILD_TIME)
+    execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
+  endif()
 elseif(WIN32)
-	if(NOT BUILD_DATE)
-		execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
-	endif()
-	if(NOT BUILD_TIME)
-		execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
-	endif()
+  if(NOT BUILD_DATE)
+    execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
+  endif()
+  if(NOT BUILD_TIME)
+    execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
+  endif()
 endif()
 
 # Write a file with the BUILD_HASH define
 file(WRITE buildinfo.h.txt
-	"#define BUILD_HASH \"${MY_WC_HASH}\"\n"
-	"#define BUILD_COMMIT_TIMESTAMP ${MY_WC_COMMIT_TIMESTAMP}\n"
-	"#define BUILD_BRANCH \"${MY_WC_BRANCH}\"\n"
-	"#define BUILD_DATE \"${BUILD_DATE}\"\n"
-	"#define BUILD_TIME \"${BUILD_TIME}\"\n"
+  "#define BUILD_HASH \"${MY_WC_HASH}\"\n"
+  "#define BUILD_COMMIT_TIMESTAMP ${MY_WC_COMMIT_TIMESTAMP}\n"
+  "#define BUILD_BRANCH \"${MY_WC_BRANCH}\"\n"
+  "#define BUILD_DATE \"${BUILD_DATE}\"\n"
+  "#define BUILD_TIME \"${BUILD_TIME}\"\n"
 )
 
 # cleanup
diff --git a/build_files/cmake/config/blender_full.cmake b/build_files/cmake/config/blender_full.cmake
index aed3381cbbea298fc650975890bef3ded7ac5b3b..6786cb5ce37b3c063b3d4350fa4bbdc21bee96a1 100644
--- a/build_files/cmake/config/blender_full.cmake
+++ b/build_files/cmake/config/blender_full.cmake
@@ -55,12 +55,12 @@ set(WITH_MEM_JEMALLOC        ON  CACHE BOOL "" FORCE)
 
 # platform dependent options
 if(UNIX AND NOT APPLE)
-	set(WITH_JACK                ON  CACHE BOOL "" FORCE)
-	set(WITH_DOC_MANPAGE         ON  CACHE BOOL "" FORCE)
+  set(WITH_JACK                ON  CACHE BOOL "" FORCE)
+  set(WITH_DOC_MANPAGE         ON  CACHE BOOL "" FORCE)
 elseif(WIN32)
-	set(WITH_JACK                OFF CACHE BOOL "" FORCE)
+  set(WITH_JACK                OFF CACHE BOOL "" FORCE)
 elseif(APPLE)
-	set(WITH_JACK                ON  CACHE BOOL "" FORCE)
+  set(WITH_JACK                ON  CACHE BOOL "" FORCE)
 
-#	include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
+#   include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
 endif()
diff --git a/build_files/cmake/config/blender_release.cmake b/build_files/cmake/config/blender_release.cmake
index cf0be8d6b3f06ee2caf5f5b4909a3acc381ebca9..24032b6aed66eedfee3979dcc0130eac23c41e68 100644
--- a/build_files/cmake/config/blender_release.cmake
+++ b/build_files/cmake/config/blender_release.cmake
@@ -58,12 +58,12 @@ set(CYCLES_CUDA_BINARIES_ARCH sm_30;sm_35;sm_37;sm_50;sm_52;sm_60;sm_61;sm_70;sm
 
 # platform dependent options
 if(UNIX AND NOT APPLE)
-	set(WITH_JACK                ON  CACHE BOOL "" FORCE)
-	set(WITH_DOC_MANPAGE         ON  CACHE BOOL "" FORCE)
+  set(WITH_JACK                ON  CACHE BOOL "" FORCE)
+  set(WITH_DOC_MANPAGE         ON  CACHE BOOL "" FORCE)
 elseif(WIN32)
-	set(WITH_JACK                OFF CACHE BOOL "" FORCE)
+  set(WITH_JACK                OFF CACHE BOOL "" FORCE)
 elseif(APPLE)
-	set(WITH_JACK                ON  CACHE BOOL "" FORCE)
+  set(WITH_JACK                ON  CACHE BOOL "" FORCE)
 
-#	include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
+#   include("${CMAKE_CURRENT_SOURCE_DIR}/../platform/platform_apple_xcode.cmake")
 endif()
diff --git a/build_files/cmake/config/bpy_module.cmake b/build_files/cmake/config/bpy_module.cmake
index 1637bbf9506b5441aab2e311632e08f8d9240f02..46aee50135c58156daf0215fa990509fb995bbf4 100644
--- a/build_files/cmake/config/bpy_module.cmake
+++ b/build_files/cmake/config/bpy_module.cmake
@@ -32,6 +32,6 @@ set(WITH_OPENVDB             OFF CACHE BOOL "" FORCE)
 set(WITH_ALEMBIC             OFF CACHE BOOL "" FORCE)
 
 if(CMAKE_SYSTEM_NAME MATCHES "Linux")
-	# jemalloc causes linking error on import, disable.
-	set(WITH_MEM_JEMALLOC        OFF CACHE BOOL "" FORCE)
+  # jemalloc causes linking error on import, disable.
+  set(WITH_MEM_JEMALLOC        OFF CACHE BOOL "" FORCE)
 endif()
diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake
index 22e53fecf5086feb6db87dbd6e0923e7463ef487..699f9cb1a993ad577461e45f5e249a79316cc02e 100644
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@ -19,175 +19,175 @@
 # ***** END GPL LICENSE BLOCK *****
 
 macro(list_insert_after
-	list_id item_check item_add
-	)
-	set(_index)
-	list(FIND "${list_id}" "${item_check}" _index)
-	if("${_index}" MATCHES "-1")
-		message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
-	endif()
-	math(EXPR _index "${_index} + 1")
-	list(INSERT ${list_id} "${_index}" ${item_add})
-	unset(_index)
+  list_id item_check item_add
+  )
+  set(_index)
+  list(FIND "${list_id}" "${item_check}" _index)
+  if("${_index}" MATCHES "-1")
+    message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
+  endif()
+  math(EXPR _index "${_index} + 1")
+  list(INSERT ${list_id} "${_index}" ${item_add})
+  unset(_index)
 endmacro()
 
 macro(list_insert_before
-	list_id item_check item_add
-	)
-	set(_index)
-	list(FIND "${list_id}" "${item_check}" _index)
-	if("${_index}" MATCHES "-1")
-		message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
-	endif()
-	list(INSERT ${list_id} "${_index}" ${item_add})
-	unset(_index)
+  list_id item_check item_add
+  )
+  set(_index)
+  list(FIND "${list_id}" "${item_check}" _index)
+  if("${_index}" MATCHES "-1")
+    message(FATAL_ERROR "'${list_id}' doesn't contain '${item_check}'")
+  endif()
+  list(INSERT ${list_id} "${_index}" ${item_add})
+  unset(_index)
 endmacro()
 
 function(list_assert_duplicates
-	list_id
-	)
-
-	# message(STATUS "list data: ${list_id}")
-
-	list(LENGTH list_id _len_before)
-	list(REMOVE_DUPLICATES list_id)
-	list(LENGTH list_id _len_after)
-	# message(STATUS "list size ${_len_before} -> ${_len_after}")
-	if(NOT _len_before EQUAL _len_after)
-		message(FATAL_ERROR "duplicate found in list which should not contain duplicates: ${list_id}")
-	endif()
-	unset(_len_before)
-	unset(_len_after)
+  list_id
+  )
+
+  # message(STATUS "list data: ${list_id}")
+
+  list(LENGTH list_id _len_before)
+  list(REMOVE_DUPLICATES list_id)
+  list(LENGTH list_id _len_after)
+  # message(STATUS "list size ${_len_before} -> ${_len_after}")
+  if(NOT _len_before EQUAL _len_after)
+    message(FATAL_ERROR "duplicate found in list which should not contain duplicates: ${list_id}")
+  endif()
+  unset(_len_before)
+  unset(_len_after)
 endfunction()
 
 
 # foo_bar.spam --> foo_barMySuffix.spam
 macro(file_suffix
-	file_name_new file_name 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}")
+  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)
+  unset(_file_name_PATH)
+  unset(_file_name_NAME_WE)
+  unset(_file_name_EXT)
 endmacro()
 
 # useful 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
-	)
+  fp_list_new fp_list fn_suffix
+  )
 
-	# incase of empty list
-	set(_fp)
-	set(_fp_suffixed)
+  # incase of empty list
+  set(_fp)
+  set(_fp_suffixed)
 
-	set(fp_list_new)
+  set(fp_list_new)
 
-	foreach(_fp ${fp_list})
-		file_suffix(_fp_suffixed "${_fp}" "${fn_suffix}")
-		list(APPEND "${fp_list_new}" "${_fp_suffixed}")
-	endforeach()
+  foreach(_fp ${fp_list})
+    file_suffix(_fp_suffixed "${_fp}" "${fn_suffix}")
+    list(APPEND "${fp_list_new}" "${_fp_suffixed}")
+  endforeach()
 
-	unset(_fp)
-	unset(_fp_suffixed)
+  unset(_fp)
+  unset(_fp_suffixed)
 
 endmacro()
 
 if(UNIX AND NOT APPLE)
-	macro(find_package_static)
-		set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
-		set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
-		find_package(${ARGV})
-		set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
-		unset(_cmake_find_library_suffixes_back)
-	endmacro()
-
-	macro(find_library_static)
-		set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
-		set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
-		find_library(${ARGV})
-		set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
-		unset(_cmake_find_library_suffixes_back)
-	endmacro()
+  macro(find_package_static)
+    set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
+    set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
+    find_package(${ARGV})
+    set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
+    unset(_cmake_find_library_suffixes_back)
+  endmacro()
+
+  macro(find_library_static)
+    set(_cmake_find_library_suffixes_back ${CMAKE_FIND_LIBRARY_SUFFIXES})
+    set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
+    find_library(${ARGV})
+    set(CMAKE_FIND_LIBRARY_SUFFIXES ${_cmake_find_library_suffixes_back})
+    unset(_cmake_find_library_suffixes_back)
+  endmacro()
 endif()
 
 function(target_link_libraries_optimized
-	TARGET
-	LIBS
-	)
+  TARGET
+  LIBS
+  )
 
-	foreach(_LIB ${LIBS})
-		target_link_libraries(${TARGET} optimized "${_LIB}")
-	endforeach()
+  foreach(_LIB ${LIBS})
+    target_link_libraries(${TARGET} optimized "${_LIB}")
+  endforeach()
 endfunction()
 
 function(target_link_libraries_debug
-	TARGET
-	LIBS
-	)
+  TARGET
+  LIBS
+  )
 
-	foreach(_LIB ${LIBS})
-		target_link_libraries(${TARGET} debug "${_LIB}")
-	endforeach()
+  foreach(_LIB ${LIBS})
+    target_link_libraries(${TARGET} debug "${_LIB}")
+  endforeach()
 endfunction()
 
 # Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
 # use it instead of include_directories()
 function(blender_include_dirs
-	includes
-	)
-
-	set(_ALL_INCS "")
-	foreach(_INC ${ARGV})
-		get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
-		list(APPEND _ALL_INCS ${_ABS_INC})
-		# for checking for invalid includes, disable for regular use
-		##if(NOT EXISTS "${_ABS_INC}/")
-		##	message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
-		##endif()
-	endforeach()
-	include_directories(${_ALL_INCS})
+  includes
+  )
+
+  set(_ALL_INCS "")
+  foreach(_INC ${ARGV})
+    get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
+    list(APPEND _ALL_INCS ${_ABS_INC})
+    # for checking for invalid includes, disable for regular use
+    ##if(NOT EXISTS "${_ABS_INC}/")
+    ##  message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
+    ##endif()
+  endforeach()
+  include_directories(${_ALL_INCS})
 endfunction()
 
 function(blender_include_dirs_sys
-	includes
-	)
-
-	set(_ALL_INCS "")
-	foreach(_INC ${ARGV})
-		get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
-		list(APPEND _ALL_INCS ${_ABS_INC})
-		##if(NOT EXISTS "${_ABS_INC}/")
-		##	message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
-		##endif()
-	endforeach()
-	include_directories(SYSTEM ${_ALL_INCS})
+  includes
+  )
+
+  set(_ALL_INCS "")
+  foreach(_INC ${ARGV})
+    get_filename_component(_ABS_INC ${_INC} ABSOLUTE)
+    list(APPEND _ALL_INCS ${_ABS_INC})
+    ##if(NOT EXISTS "${_ABS_INC}/")
+    ##  message(FATAL_ERROR "Include not found: ${_ABS_INC}/")
+    ##endif()
+  endforeach()
+  include_directories(SYSTEM ${_ALL_INCS})
 endfunction()
 
 function(blender_source_group
-	sources
-	)
-
-	# Group by location on disk
-	source_group("Source Files" FILES CMakeLists.txt)
-
-	foreach(_SRC ${sources})
-		get_filename_component(_SRC_EXT ${_SRC} EXT)
-		if((${_SRC_EXT} MATCHES ".h") OR
-		   (${_SRC_EXT} MATCHES ".hpp") OR
-		   (${_SRC_EXT} MATCHES ".hh"))
-
-			set(GROUP_ID "Header Files")
-		else()
-			set(GROUP_ID "Source Files")
-		endif()
-		source_group("${GROUP_ID}" FILES ${_SRC})
-	endforeach()
+  sources
+  )
+
+  # Group by location on disk
+  source_group("Source Files" FILES CMakeLists.txt)
+
+  foreach(_SRC ${sources})
+    get_filename_component(_SRC_EXT ${_SRC} EXT)
+    if((${_SRC_EXT} MATCHES ".h") OR
+       (${_SRC_EXT} MATCHES ".hpp") OR
+       (${_SRC_EXT} MATCHES ".hh"))
+
+      set(GROUP_ID "Header Files")
+    else()
+      set(GROUP_ID "Source Files")
+    endif()
+    source_group("${GROUP_ID}" FILES ${_SRC})
+  endforeach()
 endfunction()
 
 
@@ -199,412 +199,412 @@ endfunction()
 #
 # Optionally takes an arg passed to set(), eg PARENT_SCOPE.
 macro(add_cc_flags_custom_test
-	name
-	)
-
-	string(TOUPPER ${name} _name_upper)
-	if(DEFINED CMAKE_C_FLAGS_${_name_upper})
-		message(STATUS "Using custom CFLAGS: CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
-		set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${_name_upper}}" ${ARGV1})
-	endif()
-	if(DEFINED CMAKE_CXX_FLAGS_${_name_upper})
-		message(STATUS "Using custom CXXFLAGS: CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
-		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${_name_upper}}" ${ARGV1})
-	endif()
-	unset(_name_upper)
+  name
+  )
+
+  string(TOUPPER ${name} _name_upper)
+  if(DEFINED CMAKE_C_FLAGS_${_name_upper})
+    message(STATUS "Using custom CFLAGS: CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${_name_upper}}" ${ARGV1})
+  endif()
+  if(DEFINED CMAKE_CXX_FLAGS_${_name_upper})
+    message(STATUS "Using custom CXXFLAGS: CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${_name_upper}}" ${ARGV1})
+  endif()
+  unset(_name_upper)
 
 endmacro()
 
 
 # only MSVC uses SOURCE_GROUP
 function(blender_add_lib__impl
-	name
-	sources
-	includes
-	includes_sys
-	library_deps
-	)
-
-	# message(STATUS "Configuring library ${name}")
-
-	# include_directories(${includes})
-	# include_directories(SYSTEM ${includes_sys})
-	blender_include_dirs("${includes}")
-	blender_include_dirs_sys("${includes_sys}")
-
-	add_library(${name} ${sources})
-
-	if (NOT "${library_deps}" STREQUAL "")
-		target_link_libraries(${name} "${library_deps}")
-	endif()
-
-	# works fine without having the includes
-	# listed is helpful for IDE's (QtCreator/MSVC)
-	blender_source_group("${sources}")
-
-	#if enabled, set the FOLDER property for visual studio projects
-	if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
-		get_filename_component(FolderDir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY)
-		string(REPLACE ${CMAKE_SOURCE_DIR} "" FolderDir ${FolderDir})
-		set_target_properties(${name} PROPERTIES FOLDER ${FolderDir})
-	endif()
-
-	list_assert_duplicates("${sources}")
-	list_assert_duplicates("${includes}")
-	# Not for system includes because they can resolve to the same path
-	# list_assert_duplicates("${includes_sys}")
+  name
+  sources
+  includes
+  includes_sys
+  library_deps
+  )
+
+  # message(STATUS "Configuring library ${name}")
+
+  # include_directories(${includes})
+  # include_directories(SYSTEM ${includes_sys})
+  blender_include_dirs("${includes}")
+  blender_include_dirs_sys("${includes_sys}")
+
+  add_library(${name} ${sources})
+
+  if (NOT "${library_deps}" STREQUAL "")
+    target_link_libraries(${name} "${library_deps}")
+  endif()
+
+  # works fine without having the includes
+  # listed is helpful for IDE's (QtCreator/MSVC)
+  blender_source_group("${sources}")
+
+  #if enabled, set the FOLDER property for visual studio projects
+  if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS)
+    get_filename_component(FolderDir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY)
+    string(REPLACE ${CMAKE_SOURCE_DIR} "" FolderDir ${FolderDir})
+    set_target_properties(${name} PROPERTIES FOLDER ${FolderDir})
+  endif()
+
+  list_assert_duplicates("${sources}")
+  list_assert_duplicates("${includes}")
+  # Not for system includes because they can resolve to the same path
+  # list_assert_duplicates("${includes_sys}")
 
 endfunction()
 
 
 function(blender_add_lib_nolist
-	name
-	sources
-	includes
-	includes_sys
-	library_deps
-	)
+  name
+  sources
+  includes
+  includes_sys
+  library_deps
+  )
 
-	add_cc_flags_custom_test(${name} PARENT_SCOPE)
+  add_cc_flags_custom_test(${name} PARENT_SCOPE)
 
-	blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
+  blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
 endfunction()
 
 function(blender_add_lib
-	name
-	sources
-	includes
-	includes_sys
-	library_deps
-	)
+  name
+  sources
+  includes
+  includes_sys
+  library_deps
+  )
 
-	add_cc_flags_custom_test(${name} PARENT_SCOPE)
+  add_cc_flags_custom_test(${name} PARENT_SCOPE)
 
-	blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
+  blender_add_lib__impl(${name} "${sources}" "${includes}" "${includes_sys}" "${library_deps}")
 
-	set_property(GLOBAL APPEND PROPERTY BLENDER_LINK_LIBS ${name})
+  set_property(GLOBAL APPEND PROPERTY BLENDER_LINK_LIBS ${name})
 endfunction()
 
 
 function(SETUP_LIBDIRS)
 
-	# NOTE: For all new libraries, use absolute library paths.
-	# This should eventually be phased out.
-
-	if(NOT MSVC)
-		link_directories(${JPEG_LIBPATH} ${PNG_LIBPATH} ${ZLIB_LIBPATH} ${FREETYPE_LIBPATH})
-
-		if(WITH_PYTHON)  #  AND NOT WITH_PYTHON_MODULE  # WIN32 needs
-			link_directories(${PYTHON_LIBPATH})
-		endif()
-		if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
-			link_directories(${SDL_LIBPATH})
-		endif()
-		if(WITH_CODEC_FFMPEG)
-			link_directories(${FFMPEG_LIBPATH})
-		endif()
-		if(WITH_IMAGE_OPENEXR)
-			link_directories(${OPENEXR_LIBPATH})
-		endif()
-		if(WITH_IMAGE_TIFF)
-			link_directories(${TIFF_LIBPATH})
-		endif()
-		if(WITH_BOOST)
-			link_directories(${BOOST_LIBPATH})
-		endif()
-		if(WITH_OPENIMAGEIO)
-			link_directories(${OPENIMAGEIO_LIBPATH})
-		endif()
-		if(WITH_OPENCOLORIO)
-			link_directories(${OPENCOLORIO_LIBPATH})
-		endif()
-		if(WITH_OPENVDB)
-			link_directories(${OPENVDB_LIBPATH})
-		endif()
-		if(WITH_OPENAL)
-			link_directories(${OPENAL_LIBPATH})
-		endif()
-		if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
-			link_directories(${JACK_LIBPATH})
-		endif()
-		if(WITH_CODEC_SNDFILE)
-			link_directories(${LIBSNDFILE_LIBPATH})
-		endif()
-		if(WITH_FFTW3)
-			link_directories(${FFTW3_LIBPATH})
-		endif()
-		if(WITH_OPENCOLLADA)
-			link_directories(${OPENCOLLADA_LIBPATH})
-			## Never set
-			# link_directories(${PCRE_LIBPATH})
-			# link_directories(${EXPAT_LIBPATH})
-		endif()
-		if(WITH_LLVM)
-			link_directories(${LLVM_LIBPATH})
-		endif()
-
-		if(WITH_ALEMBIC)
-			link_directories(${ALEMBIC_LIBPATH})
-			link_directories(${HDF5_LIBPATH})
-		endif()
-
-		if(WIN32 AND NOT UNIX)
-			link_directories(${PTHREADS_LIBPATH})
-		endif()
-	endif()
+  # NOTE: For all new libraries, use absolute library paths.
+  # This should eventually be phased out.
+
+  if(NOT MSVC)
+    link_directories(${JPEG_LIBPATH} ${PNG_LIBPATH} ${ZLIB_LIBPATH} ${FREETYPE_LIBPATH})
+
+    if(WITH_PYTHON)  #  AND NOT WITH_PYTHON_MODULE  # WIN32 needs
+      link_directories(${PYTHON_LIBPATH})
+    endif()
+    if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
+      link_directories(${SDL_LIBPATH})
+    endif()
+    if(WITH_CODEC_FFMPEG)
+      link_directories(${FFMPEG_LIBPATH})
+    endif()
+    if(WITH_IMAGE_OPENEXR)
+      link_directories(${OPENEXR_LIBPATH})
+    endif()
+    if(WITH_IMAGE_TIFF)
+      link_directories(${TIFF_LIBPATH})
+    endif()
+    if(WITH_BOOST)
+      link_directories(${BOOST_LIBPATH})
+    endif()
+    if(WITH_OPENIMAGEIO)
+      link_directories(${OPENIMAGEIO_LIBPATH})
+    endif()
+    if(WITH_OPENCOLORIO)
+      link_directories(${OPENCOLORIO_LIBPATH})
+    endif()
+    if(WITH_OPENVDB)
+      link_directories(${OPENVDB_LIBPATH})
+    endif()
+    if(WITH_OPENAL)
+      link_directories(${OPENAL_LIBPATH})
+    endif()
+    if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
+      link_directories(${JACK_LIBPATH})
+    endif()
+    if(WITH_CODEC_SNDFILE)
+      link_directories(${LIBSNDFILE_LIBPATH})
+    endif()
+    if(WITH_FFTW3)
+      link_directories(${FFTW3_LIBPATH})
+    endif()
+    if(WITH_OPENCOLLADA)
+      link_directories(${OPENCOLLADA_LIBPATH})
+      ## Never set
+      # link_directories(${PCRE_LIBPATH})
+      # link_directories(${EXPAT_LIBPATH})
+    endif()
+    if(WITH_LLVM)
+      link_directories(${LLVM_LIBPATH})
+    endif()
+
+    if(WITH_ALEMBIC)
+      link_directories(${ALEMBIC_LIBPATH})
+      link_directories(${HDF5_LIBPATH})
+    endif()
+
+    if(WIN32 AND NOT UNIX)
+      link_directories(${PTHREADS_LIBPATH})
+    endif()
+  endif()
 endfunction()
 
 macro(setup_platform_linker_flags)
-	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
-	set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
+  set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
 endmacro()
 
 function(setup_liblinks
-	target
-	)
-
-	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
-	set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
-
-	set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
-	set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
-
-	set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
-	set(CMAKE_MODULE_LINKER_FLAGS_DEBUG "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
-
-	# jemalloc must be early in the list, to be before pthread (see T57998)
-	if(WITH_MEM_JEMALLOC)
-		target_link_libraries(${target} ${JEMALLOC_LIBRARIES})
-	endif()
-
-	target_link_libraries(
-		${target}
-		${PNG_LIBRARIES}
-		${FREETYPE_LIBRARY}
-	)
-
-	# since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
-	if(WITH_PYTHON)  # AND NOT WITH_PYTHON_MODULE  # WIN32 needs
-		target_link_libraries(${target} ${PYTHON_LINKFLAGS})
-
-		if(WIN32 AND NOT UNIX)
-			file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
-			target_link_libraries_debug(${target} "${PYTHON_LIBRARIES_DEBUG}")
-			target_link_libraries_optimized(${target} "${PYTHON_LIBRARIES}")
-			unset(PYTHON_LIBRARIES_DEBUG)
-		else()
-			target_link_libraries(${target} ${PYTHON_LIBRARIES})
-		endif()
-	endif()
-
-	if(WITH_LZO AND WITH_SYSTEM_LZO)
-		target_link_libraries(${target} ${LZO_LIBRARIES})
-	endif()
-	if(WITH_SYSTEM_GLEW)
-		target_link_libraries(${target} ${BLENDER_GLEW_LIBRARIES})
-	endif()
-	if(WITH_BULLET AND WITH_SYSTEM_BULLET)
-		target_link_libraries(${target} ${BULLET_LIBRARIES})
-	endif()
-	if(WITH_AUDASPACE AND WITH_SYSTEM_AUDASPACE)
-		target_link_libraries(${target} ${AUDASPACE_C_LIBRARIES} ${AUDASPACE_PY_LIBRARIES})
-	endif()
-	if(WITH_OPENAL)
-		target_link_libraries(${target} ${OPENAL_LIBRARY})
-	endif()
-	if(WITH_FFTW3)
-		target_link_libraries(${target} ${FFTW3_LIBRARIES})
-	endif()
-	if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
-		target_link_libraries(${target} ${JACK_LIBRARIES})
-	endif()
-	if(WITH_CODEC_SNDFILE)
-		target_link_libraries(${target} ${LIBSNDFILE_LIBRARIES})
-	endif()
-	if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
-		target_link_libraries(${target} ${SDL_LIBRARY})
-	endif()
-	if(WITH_CYCLES_OSL)
-		target_link_libraries(${target} ${OSL_LIBRARIES})
-	endif()
-	if(WITH_OPENVDB)
-		target_link_libraries(${target} ${OPENVDB_LIBRARIES} ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
-	endif()
-	if(WITH_OPENIMAGEIO)
-		target_link_libraries(${target} ${OPENIMAGEIO_LIBRARIES})
-	endif()
-	if(WITH_OPENCOLORIO)
-		target_link_libraries(${target} ${OPENCOLORIO_LIBRARIES})
-	endif()
-	if(WITH_OPENSUBDIV)
-			target_link_libraries(${target} ${OPENSUBDIV_LIBRARIES})
-	endif()
-	if(WITH_CYCLES_EMBREE)
-		target_link_libraries(${target} ${EMBREE_LIBRARIES})
-	endif()
-	if(WITH_BOOST)
-		target_link_libraries(${target} ${BOOST_LIBRARIES})
-		if(Boost_USE_STATIC_LIBS AND Boost_USE_ICU)
-			target_link_libraries(${target} ${ICU_LIBRARIES})
-		endif()
-	endif()
-	target_link_libraries(${target} ${JPEG_LIBRARIES})
-	if(WITH_ALEMBIC)
-		target_link_libraries(${target} ${ALEMBIC_LIBRARIES} ${HDF5_LIBRARIES})
-	endif()
-	if(WITH_IMAGE_TIFF)
-		target_link_libraries(${target} ${TIFF_LIBRARY})
-	endif()
-	if(WITH_IMAGE_OPENEXR)
-		target_link_libraries(${target} ${OPENEXR_LIBRARIES})
-	endif()
-	if(WITH_IMAGE_OPENJPEG)
-		target_link_libraries(${target} ${OPENJPEG_LIBRARIES})
-	endif()
-	if(WITH_CODEC_FFMPEG)
-		target_link_libraries(${target} ${FFMPEG_LIBRARIES})
-	endif()
-	if(WITH_OPENCOLLADA)
-		if(WIN32 AND NOT UNIX)
-			file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
-			target_link_libraries_debug(${target} "${OPENCOLLADA_LIBRARIES_DEBUG}")
-			target_link_libraries_optimized(${target} "${OPENCOLLADA_LIBRARIES}")
-			unset(OPENCOLLADA_LIBRARIES_DEBUG)
-
-			file_list_suffix(PCRE_LIBRARIES_DEBUG "${PCRE_LIBRARIES}" "_d")
-			target_link_libraries_debug(${target} "${PCRE_LIBRARIES_DEBUG}")
-			target_link_libraries_optimized(${target} "${PCRE_LIBRARIES}")
-			unset(PCRE_LIBRARIES_DEBUG)
-
-			if(EXPAT_LIB)
-				file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
-				target_link_libraries_debug(${target} "${EXPAT_LIB_DEBUG}")
-				target_link_libraries_optimized(${target} "${EXPAT_LIB}")
-				unset(EXPAT_LIB_DEBUG)
-			endif()
-		else()
-			target_link_libraries(
-				${target}
-				${OPENCOLLADA_LIBRARIES}
-				${PCRE_LIBRARIES}
-				${XML2_LIBRARIES}
-				${EXPAT_LIB}
-			)
-		endif()
-	endif()
-	if(WITH_MOD_CLOTH_ELTOPO)
-		target_link_libraries(${target} ${LAPACK_LIBRARIES})
-	endif()
-	if(WITH_LLVM)
-		target_link_libraries(${target} ${LLVM_LIBRARY})
-	endif()
-	if(WIN32 AND NOT UNIX)
-		target_link_libraries(${target} ${PTHREADS_LIBRARIES})
-	endif()
-	if(UNIX AND NOT APPLE)
-		if(WITH_OPENMP_STATIC)
-			target_link_libraries(${target} ${OpenMP_LIBRARIES})
-		endif()
-		if(WITH_INPUT_NDOF)
-			target_link_libraries(${target} ${NDOF_LIBRARIES})
-		endif()
-	endif()
-	if(WITH_SYSTEM_GLOG)
-		target_link_libraries(${target} ${GLOG_LIBRARIES})
-	endif()
-	if(WITH_SYSTEM_GFLAGS)
-		target_link_libraries(${target} ${GFLAGS_LIBRARIES})
-	endif()
-
-	# We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES depends on them..
-	if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
-		target_link_libraries(${target} "extern_clew")
-		if(WITH_CUDA_DYNLOAD)
-			target_link_libraries(${target} "extern_cuew")
-		else()
-			target_link_libraries(${target} ${CUDA_CUDA_LIBRARY})
-		endif()
-	endif()
-
-	target_link_libraries(
-		${target}
-		${ZLIB_LIBRARIES}
-	)
-
-	#system libraries with no dependencies such as platform link libs or opengl should go last
-	target_link_libraries(${target}
-			${BLENDER_GL_LIBRARIES})
-
-	#target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
-	target_link_libraries(${target} ${PLATFORM_LINKLIBS})
+  target
+  )
+
+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
+  set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+
+  set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
+  set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+
+  set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
+  set(CMAKE_MODULE_LINKER_FLAGS_DEBUG "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+
+  # jemalloc must be early in the list, to be before pthread (see T57998)
+  if(WITH_MEM_JEMALLOC)
+    target_link_libraries(${target} ${JEMALLOC_LIBRARIES})
+  endif()
+
+  target_link_libraries(
+    ${target}
+    ${PNG_LIBRARIES}
+    ${FREETYPE_LIBRARY}
+  )
+
+  # since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
+  if(WITH_PYTHON)  # AND NOT WITH_PYTHON_MODULE  # WIN32 needs
+    target_link_libraries(${target} ${PYTHON_LINKFLAGS})
+
+    if(WIN32 AND NOT UNIX)
+      file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
+      target_link_libraries_debug(${target} "${PYTHON_LIBRARIES_DEBUG}")
+      target_link_libraries_optimized(${target} "${PYTHON_LIBRARIES}")
+      unset(PYTHON_LIBRARIES_DEBUG)
+    else()
+      target_link_libraries(${target} ${PYTHON_LIBRARIES})
+    endif()
+  endif()
+
+  if(WITH_LZO AND WITH_SYSTEM_LZO)
+    target_link_libraries(${target} ${LZO_LIBRARIES})
+  endif()
+  if(WITH_SYSTEM_GLEW)
+    target_link_libraries(${target} ${BLENDER_GLEW_LIBRARIES})
+  endif()
+  if(WITH_BULLET AND WITH_SYSTEM_BULLET)
+    target_link_libraries(${target} ${BULLET_LIBRARIES})
+  endif()
+  if(WITH_AUDASPACE AND WITH_SYSTEM_AUDASPACE)
+    target_link_libraries(${target} ${AUDASPACE_C_LIBRARIES} ${AUDASPACE_PY_LIBRARIES})
+  endif()
+  if(WITH_OPENAL)
+    target_link_libraries(${target} ${OPENAL_LIBRARY})
+  endif()
+  if(WITH_FFTW3)
+    target_link_libraries(${target} ${FFTW3_LIBRARIES})
+  endif()
+  if(WITH_JACK AND NOT WITH_JACK_DYNLOAD)
+    target_link_libraries(${target} ${JACK_LIBRARIES})
+  endif()
+  if(WITH_CODEC_SNDFILE)
+    target_link_libraries(${target} ${LIBSNDFILE_LIBRARIES})
+  endif()
+  if(WITH_SDL AND NOT WITH_SDL_DYNLOAD)
+    target_link_libraries(${target} ${SDL_LIBRARY})
+  endif()
+  if(WITH_CYCLES_OSL)
+    target_link_libraries(${target} ${OSL_LIBRARIES})
+  endif()
+  if(WITH_OPENVDB)
+    target_link_libraries(${target} ${OPENVDB_LIBRARIES} ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
+  endif()
+  if(WITH_OPENIMAGEIO)
+    target_link_libraries(${target} ${OPENIMAGEIO_LIBRARIES})
+  endif()
+  if(WITH_OPENCOLORIO)
+    target_link_libraries(${target} ${OPENCOLORIO_LIBRARIES})
+  endif()
+  if(WITH_OPENSUBDIV)
+      target_link_libraries(${target} ${OPENSUBDIV_LIBRARIES})
+  endif()
+  if(WITH_CYCLES_EMBREE)
+    target_link_libraries(${target} ${EMBREE_LIBRARIES})
+  endif()
+  if(WITH_BOOST)
+    target_link_libraries(${target} ${BOOST_LIBRARIES})
+    if(Boost_USE_STATIC_LIBS AND Boost_USE_ICU)
+      target_link_libraries(${target} ${ICU_LIBRARIES})
+    endif()
+  endif()
+  target_link_libraries(${target} ${JPEG_LIBRARIES})
+  if(WITH_ALEMBIC)
+    target_link_libraries(${target} ${ALEMBIC_LIBRARIES} ${HDF5_LIBRARIES})
+  endif()
+  if(WITH_IMAGE_TIFF)
+    target_link_libraries(${target} ${TIFF_LIBRARY})
+  endif()
+  if(WITH_IMAGE_OPENEXR)
+    target_link_libraries(${target} ${OPENEXR_LIBRARIES})
+  endif()
+  if(WITH_IMAGE_OPENJPEG)
+    target_link_libraries(${target} ${OPENJPEG_LIBRARIES})
+  endif()
+  if(WITH_CODEC_FFMPEG)
+    target_link_libraries(${target} ${FFMPEG_LIBRARIES})
+  endif()
+  if(WITH_OPENCOLLADA)
+    if(WIN32 AND NOT UNIX)
+      file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
+      target_link_libraries_debug(${target} "${OPENCOLLADA_LIBRARIES_DEBUG}")
+      target_link_libraries_optimized(${target} "${OPENCOLLADA_LIBRARIES}")
+      unset(OPENCOLLADA_LIBRARIES_DEBUG)
+
+      file_list_suffix(PCRE_LIBRARIES_DEBUG "${PCRE_LIBRARIES}" "_d")
+      target_link_libraries_debug(${target} "${PCRE_LIBRARIES_DEBUG}")
+      target_link_libraries_optimized(${target} "${PCRE_LIBRARIES}")
+      unset(PCRE_LIBRARIES_DEBUG)
+
+      if(EXPAT_LIB)
+        file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
+        target_link_libraries_debug(${target} "${EXPAT_LIB_DEBUG}")
+        target_link_libraries_optimized(${target} "${EXPAT_LIB}")
+        unset(EXPAT_LIB_DEBUG)
+      endif()
+    else()
+      target_link_libraries(
+        ${target}
+        ${OPENCOLLADA_LIBRARIES}
+        ${PCRE_LIBRARIES}
+        ${XML2_LIBRARIES}
+        ${EXPAT_LIB}
+      )
+    endif()
+  endif()
+  if(WITH_MOD_CLOTH_ELTOPO)
+    target_link_libraries(${target} ${LAPACK_LIBRARIES})
+  endif()
+  if(WITH_LLVM)
+    target_link_libraries(${target} ${LLVM_LIBRARY})
+  endif()
+  if(WIN32 AND NOT UNIX)
+    target_link_libraries(${target} ${PTHREADS_LIBRARIES})
+  endif()
+  if(UNIX AND NOT APPLE)
+    if(WITH_OPENMP_STATIC)
+      target_link_libraries(${target} ${OpenMP_LIBRARIES})
+    endif()
+    if(WITH_INPUT_NDOF)
+      target_link_libraries(${target} ${NDOF_LIBRARIES})
+    endif()
+  endif()
+  if(WITH_SYSTEM_GLOG)
+    target_link_libraries(${target} ${GLOG_LIBRARIES})
+  endif()
+  if(WITH_SYSTEM_GFLAGS)
+    target_link_libraries(${target} ${GFLAGS_LIBRARIES})
+  endif()
+
+  # We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES depends on them..
+  if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
+    target_link_libraries(${target} "extern_clew")
+    if(WITH_CUDA_DYNLOAD)
+      target_link_libraries(${target} "extern_cuew")
+    else()
+      target_link_libraries(${target} ${CUDA_CUDA_LIBRARY})
+    endif()
+  endif()
+
+  target_link_libraries(
+    ${target}
+    ${ZLIB_LIBRARIES}
+  )
+
+  #system libraries with no dependencies such as platform link libs or opengl should go last
+  target_link_libraries(${target}
+      ${BLENDER_GL_LIBRARIES})
+
+  #target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
+  target_link_libraries(${target} ${PLATFORM_LINKLIBS})
 endfunction()
 
 macro(TEST_SSE_SUPPORT
-	_sse_flags
-	_sse2_flags)
-
-	include(CheckCSourceRuns)
-
-	# message(STATUS "Detecting SSE support")
-	if(CMAKE_COMPILER_IS_GNUCC OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))
-		set(${_sse_flags} "-msse")
-		set(${_sse2_flags} "-msse2")
-	elseif(MSVC)
-		# x86_64 has this auto enabled
-		if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-			set(${_sse_flags} "")
-			set(${_sse2_flags} "")
-		else()
-			set(${_sse_flags} "/arch:SSE")
-			set(${_sse2_flags} "/arch:SSE2")
-		endif()
-	elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
-		set(${_sse_flags} "")  # icc defaults to -msse
-		set(${_sse2_flags} "")  # icc defaults to -msse2
-	else()
-		message(WARNING "SSE flags for this compiler: '${CMAKE_C_COMPILER_ID}' not known")
-		set(${_sse_flags})
-		set(${_sse2_flags})
-	endif()
-
-	set(CMAKE_REQUIRED_FLAGS "${${_sse_flags}} ${${_sse2_flags}}")
-
-	if(NOT DEFINED SUPPORT_SSE_BUILD)
-		# result cached
-		check_c_source_runs("
-			#include <xmmintrin.h>
-			int main(void) { __m128 v = _mm_setzero_ps(); return 0; }"
-		SUPPORT_SSE_BUILD)
-
-		if(SUPPORT_SSE_BUILD)
-			message(STATUS "SSE Support: detected.")
-		else()
-			message(STATUS "SSE Support: missing.")
-		endif()
-	endif()
-
-	if(NOT DEFINED SUPPORT_SSE2_BUILD)
-		# result cached
-		check_c_source_runs("
-			#include <emmintrin.h>
-			int main(void) { __m128d v = _mm_setzero_pd(); return 0; }"
-		SUPPORT_SSE2_BUILD)
-
-		if(SUPPORT_SSE2_BUILD)
-			message(STATUS "SSE2 Support: detected.")
-		else()
-			message(STATUS "SSE2 Support: missing.")
-		endif()
-	endif()
-
-	unset(CMAKE_REQUIRED_FLAGS)
+  _sse_flags
+  _sse2_flags)
+
+  include(CheckCSourceRuns)
+
+  # message(STATUS "Detecting SSE support")
+  if(CMAKE_COMPILER_IS_GNUCC OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))
+    set(${_sse_flags} "-msse")
+    set(${_sse2_flags} "-msse2")
+  elseif(MSVC)
+    # x86_64 has this auto enabled
+    if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+      set(${_sse_flags} "")
+      set(${_sse2_flags} "")
+    else()
+      set(${_sse_flags} "/arch:SSE")
+      set(${_sse2_flags} "/arch:SSE2")
+    endif()
+  elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
+    set(${_sse_flags} "")  # icc defaults to -msse
+    set(${_sse2_flags} "")  # icc defaults to -msse2
+  else()
+    message(WARNING "SSE flags for this compiler: '${CMAKE_C_COMPILER_ID}' not known")
+    set(${_sse_flags})
+    set(${_sse2_flags})
+  endif()
+
+  set(CMAKE_REQUIRED_FLAGS "${${_sse_flags}} ${${_sse2_flags}}")
+
+  if(NOT DEFINED SUPPORT_SSE_BUILD)
+    # result cached
+    check_c_source_runs("
+      #include <xmmintrin.h>
+      int main(void) { __m128 v = _mm_setzero_ps(); return 0; }"
+    SUPPORT_SSE_BUILD)
+
+    if(SUPPORT_SSE_BUILD)
+      message(STATUS "SSE Support: detected.")
+    else()
+      message(STATUS "SSE Support: missing.")
+    endif()
+  endif()
+
+  if(NOT DEFINED SUPPORT_SSE2_BUILD)
+    # result cached
+    check_c_source_runs("
+      #include <emmintrin.h>
+      int main(void) { __m128d v = _mm_setzero_pd(); return 0; }"
+    SUPPORT_SSE2_BUILD)
+
+    if(SUPPORT_SSE2_BUILD)
+      message(STATUS "SSE2 Support: detected.")
+    else()
+      message(STATUS "SSE2 Support: missing.")
+    endif()
+  endif()
+
+  unset(CMAKE_REQUIRED_FLAGS)
 endmacro()
 
 # Only print message if running CMake first time
 macro(message_first_run)
-	if(FIRST_RUN)
-		message(${ARGV})
-	endif()
+  if(FIRST_RUN)
+    message(${ARGV})
+  endif()
 endmacro()
 
 # when we have warnings as errors applied globally this
@@ -612,252 +612,252 @@ endmacro()
 
 # utility macro
 macro(remove_cc_flag
-	_flag)
-
-	foreach(flag ${ARGV})
-		string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
-		string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
-		string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
-		string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL}")
-		string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
-
-		string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
-		string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
-		string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
-		string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
-		string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
-	endforeach()
-	unset(flag)
+  _flag)
+
+  foreach(flag ${ARGV})
+    string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+    string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
+    string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
+    string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL}")
+    string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
+
+    string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+    string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
+    string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
+    string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
+    string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
+  endforeach()
+  unset(flag)
 
 endmacro()
 
 macro(add_c_flag
-	flag)
+  flag)
 
-	set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
 endmacro()
 
 macro(add_cxx_flag
-	flag)
+  flag)
 
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
 endmacro()
 
 macro(remove_strict_flags)
 
-	if(CMAKE_COMPILER_IS_GNUCC)
-		remove_cc_flag(
-			"-Wstrict-prototypes"
-			"-Wmissing-prototypes"
-			"-Wmissing-declarations"
-			"-Wmissing-format-attribute"
-			"-Wunused-local-typedefs"
-			"-Wunused-macros"
-			"-Wunused-parameter"
-			"-Wwrite-strings"
-			"-Wredundant-decls"
-			"-Wundef"
-			"-Wshadow"
-			"-Wdouble-promotion"
-			"-Wold-style-definition"
-			"-Werror=[^ ]+"
-			"-Werror"
-		)
-
-		# negate flags implied by '-Wall'
-		add_c_flag("${C_REMOVE_STRICT_FLAGS}")
-		add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
-	endif()
-
-	if(CMAKE_C_COMPILER_ID MATCHES "Clang")
-		remove_cc_flag(
-			"-Wunused-parameter"
-			"-Wunused-variable"
-			"-Werror=[^ ]+"
-			"-Werror"
-		)
-
-		# negate flags implied by '-Wall'
-		add_c_flag("${C_REMOVE_STRICT_FLAGS}")
-		add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
-	endif()
-
-	if(MSVC)
-		# TODO
-	endif()
+  if(CMAKE_COMPILER_IS_GNUCC)
+    remove_cc_flag(
+      "-Wstrict-prototypes"
+      "-Wmissing-prototypes"
+      "-Wmissing-declarations"
+      "-Wmissing-format-attribute"
+      "-Wunused-local-typedefs"
+      "-Wunused-macros"
+      "-Wunused-parameter"
+      "-Wwrite-strings"
+      "-Wredundant-decls"
+      "-Wundef"
+      "-Wshadow"
+      "-Wdouble-promotion"
+      "-Wold-style-definition"
+      "-Werror=[^ ]+"
+      "-Werror"
+    )
+
+    # negate flags implied by '-Wall'
+    add_c_flag("${C_REMOVE_STRICT_FLAGS}")
+    add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
+  endif()
+
+  if(CMAKE_C_COMPILER_ID MATCHES "Clang")
+    remove_cc_flag(
+      "-Wunused-parameter"
+      "-Wunused-variable"
+      "-Werror=[^ ]+"
+      "-Werror"
+    )
+
+    # negate flags implied by '-Wall'
+    add_c_flag("${C_REMOVE_STRICT_FLAGS}")
+    add_cxx_flag("${CXX_REMOVE_STRICT_FLAGS}")
+  endif()
+
+  if(MSVC)
+    # TODO
+  endif()
 
 endmacro()
 
 macro(remove_extra_strict_flags)
-	if(CMAKE_COMPILER_IS_GNUCC)
-		remove_cc_flag(
-			"-Wunused-parameter"
-		)
-	endif()
-
-	if(CMAKE_C_COMPILER_ID MATCHES "Clang")
-		remove_cc_flag(
-			"-Wunused-parameter"
-		)
-	endif()
-
-	if(MSVC)
-		# TODO
-	endif()
+  if(CMAKE_COMPILER_IS_GNUCC)
+    remove_cc_flag(
+      "-Wunused-parameter"
+    )
+  endif()
+
+  if(CMAKE_C_COMPILER_ID MATCHES "Clang")
+    remove_cc_flag(
+      "-Wunused-parameter"
+    )
+  endif()
+
+  if(MSVC)
+    # TODO
+  endif()
 endmacro()
 
 # note, we can only append flags on a single file so we need to negate the options.
 # at the moment we cant shut up ffmpeg deprecations, so use this, but will
 # probably add more removals here.
 macro(remove_strict_c_flags_file
-	filenames)
-	foreach(_SOURCE ${ARGV})
-		if(CMAKE_COMPILER_IS_GNUCC OR
-		   (CMAKE_C_COMPILER_ID MATCHES "Clang"))
-			set_source_files_properties(${_SOURCE}
-				PROPERTIES
-					COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
-			)
-		endif()
-		if(MSVC)
-			# TODO
-		endif()
-	endforeach()
-	unset(_SOURCE)
+  filenames)
+  foreach(_SOURCE ${ARGV})
+    if(CMAKE_COMPILER_IS_GNUCC OR
+       (CMAKE_C_COMPILER_ID MATCHES "Clang"))
+      set_source_files_properties(${_SOURCE}
+        PROPERTIES
+          COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
+      )
+    endif()
+    if(MSVC)
+      # TODO
+    endif()
+  endforeach()
+  unset(_SOURCE)
 endmacro()
 
 macro(remove_strict_cxx_flags_file
-	filenames)
-	remove_strict_c_flags_file(${filenames} ${ARHV})
-	foreach(_SOURCE ${ARGV})
-		if(CMAKE_COMPILER_IS_GNUCC OR
-		   (CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
-			set_source_files_properties(${_SOURCE}
-				PROPERTIES
-					COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
-			)
-		endif()
-		if(MSVC)
-			# TODO
-		endif()
-	endforeach()
-	unset(_SOURCE)
+  filenames)
+  remove_strict_c_flags_file(${filenames} ${ARHV})
+  foreach(_SOURCE ${ARGV})
+    if(CMAKE_COMPILER_IS_GNUCC OR
+       (CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
+      set_source_files_properties(${_SOURCE}
+        PROPERTIES
+          COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
+      )
+    endif()
+    if(MSVC)
+      # TODO
+    endif()
+  endforeach()
+  unset(_SOURCE)
 endmacro()
 
 # External libs may need 'signed char' to be default.
 macro(remove_cc_flag_unsigned_char)
-	if(CMAKE_COMPILER_IS_GNUCC OR
-	   (CMAKE_C_COMPILER_ID MATCHES "Clang") OR
-	   (CMAKE_C_COMPILER_ID MATCHES "Intel"))
-		remove_cc_flag("-funsigned-char")
-	elseif(MSVC)
-		remove_cc_flag("/J")
-	else()
-		message(WARNING
-			"Compiler '${CMAKE_C_COMPILER_ID}' failed to disable 'unsigned char' flag."
-			"Build files need updating."
-		)
-	endif()
+  if(CMAKE_COMPILER_IS_GNUCC OR
+     (CMAKE_C_COMPILER_ID MATCHES "Clang") OR
+     (CMAKE_C_COMPILER_ID MATCHES "Intel"))
+    remove_cc_flag("-funsigned-char")
+  elseif(MSVC)
+    remove_cc_flag("/J")
+  else()
+    message(WARNING
+      "Compiler '${CMAKE_C_COMPILER_ID}' failed to disable 'unsigned char' flag."
+      "Build files need updating."
+    )
+  endif()
 endmacro()
 
 function(ADD_CHECK_C_COMPILER_FLAG
-	_CFLAGS
-	_CACHE_VAR
-	_FLAG
-	)
-
-	include(CheckCCompilerFlag)
-
-	CHECK_C_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
-	if(${_CACHE_VAR})
-		# message(STATUS "Using CFLAG: ${_FLAG}")
-		set(${_CFLAGS} "${${_CFLAGS}} ${_FLAG}" PARENT_SCOPE)
-	else()
-		message(STATUS "Unsupported CFLAG: ${_FLAG}")
-	endif()
+  _CFLAGS
+  _CACHE_VAR
+  _FLAG
+  )
+
+  include(CheckCCompilerFlag)
+
+  CHECK_C_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
+  if(${_CACHE_VAR})
+    # message(STATUS "Using CFLAG: ${_FLAG}")
+    set(${_CFLAGS} "${${_CFLAGS}} ${_FLAG}" PARENT_SCOPE)
+  else()
+    message(STATUS "Unsupported CFLAG: ${_FLAG}")
+  endif()
 endfunction()
 
 function(ADD_CHECK_CXX_COMPILER_FLAG
-	_CXXFLAGS
-	_CACHE_VAR
-	_FLAG
-	)
-
-	include(CheckCXXCompilerFlag)
-
-	CHECK_CXX_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
-	if(${_CACHE_VAR})
-		# message(STATUS "Using CXXFLAG: ${_FLAG}")
-		set(${_CXXFLAGS} "${${_CXXFLAGS}} ${_FLAG}" PARENT_SCOPE)
-	else()
-		message(STATUS "Unsupported CXXFLAG: ${_FLAG}")
-	endif()
+  _CXXFLAGS
+  _CACHE_VAR
+  _FLAG
+  )
+
+  include(CheckCXXCompilerFlag)
+
+  CHECK_CXX_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}")
+  if(${_CACHE_VAR})
+    # message(STATUS "Using CXXFLAG: ${_FLAG}")
+    set(${_CXXFLAGS} "${${_CXXFLAGS}} ${_FLAG}" PARENT_SCOPE)
+  else()
+    message(STATUS "Unsupported CXXFLAG: ${_FLAG}")
+  endif()
 endfunction()
 
 function(get_blender_version)
-	# extracts header vars and defines them in the parent scope:
-	#
-	# - BLENDER_VERSION (major.minor)
-	# - BLENDER_VERSION_MAJOR
-	# - BLENDER_VERSION_MINOR
-	# - BLENDER_SUBVERSION (used for internal versioning mainly)
-	# - BLENDER_VERSION_CHAR (a, b, c, ...or empty string)
-	# - BLENDER_VERSION_CYCLE (alpha, beta, rc, release)
-
-	# So cmake depends on BKE_blender.h, beware of inf-loops!
-	CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h
-	               ${CMAKE_BINARY_DIR}/source/blender/blenkernel/BKE_blender_version.h.done)
-
-	file(STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h _contents REGEX "^#define[ \t]+BLENDER_.*$")
-
-	string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1" _out_version "${_contents}")
-	string(REGEX REPLACE ".*#define[ \t]+BLENDER_SUBVERSION[ \t]+([0-9]+).*" "\\1" _out_subversion "${_contents}")
-	string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CHAR[ \t]+([a-z]+).*" "\\1" _out_version_char "${_contents}")
-	string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1" _out_version_cycle "${_contents}")
-
-	if(NOT ${_out_version} MATCHES "[0-9]+")
-		message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION")
-	endif()
-
-	if(NOT ${_out_subversion} MATCHES "[0-9]+")
-		message(FATAL_ERROR "Version parsing failed for BLENDER_SUBVERSION")
-	endif()
-
-	# clumsy regex, only single char are ok but it could be unset
-
-	string(LENGTH "${_out_version_char}" _out_version_char_len)
-	if(NOT _out_version_char_len EQUAL 1)
-		set(_out_version_char "")
-	elseif(NOT ${_out_version_char} MATCHES "[a-z]+")
-		message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CHAR")
-	endif()
-
-	if(NOT ${_out_version_cycle} MATCHES "[a-z]+")
-		message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CYCLE")
-	endif()
-
-	math(EXPR _out_version_major "${_out_version} / 100")
-	math(EXPR _out_version_minor "${_out_version} % 100")
-
-	# for packaging, alpha to numbers
-	string(COMPARE EQUAL "${_out_version_char}" "" _out_version_char_empty)
-	if(${_out_version_char_empty})
-		set(_out_version_char_index "0")
-	else()
-		set(_char_ls a b c d e f g h i j k l m n o p q r s t u v w x y z)
-		list(FIND _char_ls ${_out_version_char} _out_version_char_index)
-		math(EXPR _out_version_char_index "${_out_version_char_index} + 1")
-	endif()
-
-	# output vars
-	set(BLENDER_VERSION "${_out_version_major}.${_out_version_minor}" PARENT_SCOPE)
-	set(BLENDER_VERSION_MAJOR "${_out_version_major}" PARENT_SCOPE)
-	set(BLENDER_VERSION_MINOR "${_out_version_minor}" PARENT_SCOPE)
-	set(BLENDER_SUBVERSION "${_out_subversion}" PARENT_SCOPE)
-	set(BLENDER_VERSION_CHAR "${_out_version_char}" PARENT_SCOPE)
-	set(BLENDER_VERSION_CHAR_INDEX "${_out_version_char_index}" PARENT_SCOPE)
-	set(BLENDER_VERSION_CYCLE "${_out_version_cycle}" PARENT_SCOPE)
+  # extracts header vars and defines them in the parent scope:
+  #
+  # - BLENDER_VERSION (major.minor)
+  # - BLENDER_VERSION_MAJOR
+  # - BLENDER_VERSION_MINOR
+  # - BLENDER_SUBVERSION (used for internal versioning mainly)
+  # - BLENDER_VERSION_CHAR (a, b, c, ...or empty string)
+  # - BLENDER_VERSION_CYCLE (alpha, beta, rc, release)
+
+  # So cmake depends on BKE_blender.h, beware of inf-loops!
+  CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h
+                 ${CMAKE_BINARY_DIR}/source/blender/blenkernel/BKE_blender_version.h.done)
+
+  file(STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h _contents REGEX "^#define[ \t]+BLENDER_.*$")
+
+  string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1" _out_version "${_contents}")
+  string(REGEX REPLACE ".*#define[ \t]+BLENDER_SUBVERSION[ \t]+([0-9]+).*" "\\1" _out_subversion "${_contents}")
+  string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CHAR[ \t]+([a-z]+).*" "\\1" _out_version_char "${_contents}")
+  string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1" _out_version_cycle "${_contents}")
+
+  if(NOT ${_out_version} MATCHES "[0-9]+")
+    message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION")
+  endif()
+
+  if(NOT ${_out_subversion} MATCHES "[0-9]+")
+    message(FATAL_ERROR "Version parsing failed for BLENDER_SUBVERSION")
+  endif()
+
+  # clumsy regex, only single char are ok but it could be unset
+
+  string(LENGTH "${_out_version_char}" _out_version_char_len)
+  if(NOT _out_version_char_len EQUAL 1)
+    set(_out_version_char "")
+  elseif(NOT ${_out_version_char} MATCHES "[a-z]+")
+    message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CHAR")
+  endif()
+
+  if(NOT ${_out_version_cycle} MATCHES "[a-z]+")
+    message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION_CYCLE")
+  endif()
+
+  math(EXPR _out_version_major "${_out_version} / 100")
+  math(EXPR _out_version_minor "${_out_version} % 100")
+
+  # for packaging, alpha to numbers
+  string(COMPARE EQUAL "${_out_version_char}" "" _out_version_char_empty)
+  if(${_out_version_char_empty})
+    set(_out_version_char_index "0")
+  else()
+    set(_char_ls a b c d e f g h i j k l m n o p q r s t u v w x y z)
+    list(FIND _char_ls ${_out_version_char} _out_version_char_index)
+    math(EXPR _out_version_char_index "${_out_version_char_index} + 1")
+  endif()
+
+  # output vars
+  set(BLENDER_VERSION "${_out_version_major}.${_out_version_minor}" PARENT_SCOPE)
+  set(BLENDER_VERSION_MAJOR "${_out_version_major}" PARENT_SCOPE)
+  set(BLENDER_VERSION_MINOR "${_out_version_minor}" PARENT_SCOPE)
+  set(BLENDER_SUBVERSION "${_out_subversion}" PARENT_SCOPE)
+  set(BLENDER_VERSION_CHAR "${_out_version_char}" PARENT_SCOPE)
+  set(BLENDER_VERSION_CHAR_INDEX "${_out_version_char_index}" PARENT_SCOPE)
+  set(BLENDER_VERSION_CYCLE "${_out_version_cycle}" PARENT_SCOPE)
 
 endfunction()
 
@@ -865,48 +865,48 @@ endfunction()
 # hacks to override initial project settings
 # these macros must be called directly before/after project(Blender)
 macro(blender_project_hack_pre)
-	# ------------------
-	# GCC -O3 HACK START
-	# needed because O3 can cause problems but
-	# allow the builder to set O3 manually after.
-	if(DEFINED CMAKE_C_FLAGS_RELEASE)
-		set(_reset_standard_cflags_rel OFF)
-	else()
-		set(_reset_standard_cflags_rel ON)
-	endif()
-	if(DEFINED CMAKE_CXX_FLAGS_RELEASE)
-		set(_reset_standard_cxxflags_rel OFF)
-	else()
-		set(_reset_standard_cxxflags_rel ON)
-	endif()
+  # ------------------
+  # GCC -O3 HACK START
+  # needed because O3 can cause problems but
+  # allow the builder to set O3 manually after.
+  if(DEFINED CMAKE_C_FLAGS_RELEASE)
+    set(_reset_standard_cflags_rel OFF)
+  else()
+    set(_reset_standard_cflags_rel ON)
+  endif()
+  if(DEFINED CMAKE_CXX_FLAGS_RELEASE)
+    set(_reset_standard_cxxflags_rel OFF)
+  else()
+    set(_reset_standard_cxxflags_rel ON)
+  endif()
 endmacro()
 
 
 macro(blender_project_hack_post)
-	# ----------------
-	# GCC -O3 HACK END
-	if(_reset_standard_cflags_rel)
-		string(REGEX REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
-		set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "" FORCE)
-		mark_as_advanced(CMAKE_C_FLAGS_RELEASE)
-	endif()
-
-	if(_reset_standard_cxxflags_rel)
-		string(REGEX REPLACE "-O3" "-O2" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
-		set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "" FORCE)
-		mark_as_advanced(CMAKE_CXX_FLAGS_RELEASE)
-	endif()
-
-	unset(_reset_standard_cflags_rel)
-	unset(_reset_standard_cxxflags_rel)
-
-	# ------------------------------------------------------------------
-	# workaround for omission in cmake 2.8.4's GNU.cmake, fixed in 2.8.5
-	if(CMAKE_COMPILER_IS_GNUCC)
-		if(NOT DARWIN)
-			set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ")
-		endif()
-	endif()
+  # ----------------
+  # GCC -O3 HACK END
+  if(_reset_standard_cflags_rel)
+    string(REGEX REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
+    set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "" FORCE)
+    mark_as_advanced(CMAKE_C_FLAGS_RELEASE)
+  endif()
+
+  if(_reset_standard_cxxflags_rel)
+    string(REGEX REPLACE "-O3" "-O2" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
+    set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "" FORCE)
+    mark_as_advanced(CMAKE_CXX_FLAGS_RELEASE)
+  endif()
+
+  unset(_reset_standard_cflags_rel)
+  unset(_reset_standard_cxxflags_rel)
+
+  # ------------------------------------------------------------------
+  # workaround for omission in cmake 2.8.4's GNU.cmake, fixed in 2.8.5
+  if(CMAKE_COMPILER_IS_GNUCC)
+    if(NOT DARWIN)
+      set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ")
+    endif()
+  endif()
 
 endmacro()
 
@@ -914,297 +914,297 @@ endmacro()
 # only install them at the end so the directories don't get cleared with
 # the files in them. used by cycles to install addon.
 function(delayed_install
-	base
-	files
-	destination)
-
-	foreach(f ${files})
-		if(IS_ABSOLUTE ${f})
-			set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${f})
-		else()
-			set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${base}/${f})
-		endif()
-		set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_DESTINATIONS ${destination})
-	endforeach()
+  base
+  files
+  destination)
+
+  foreach(f ${files})
+    if(IS_ABSOLUTE ${f})
+      set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${f})
+    else()
+      set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${base}/${f})
+    endif()
+    set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_DESTINATIONS ${destination})
+  endforeach()
 endfunction()
 
 # note this is a function instead of a macro so that ${BUILD_TYPE} in targetdir
 # does not get expanded in calling but is preserved
 function(delayed_do_install
-	targetdir)
-
-	get_property(files GLOBAL PROPERTY DELAYED_INSTALL_FILES)
-	get_property(destinations GLOBAL PROPERTY DELAYED_INSTALL_DESTINATIONS)
-
-	if(files)
-		list(LENGTH files n)
-		math(EXPR n "${n}-1")
-
-		foreach(i RANGE ${n})
-			list(GET files ${i} f)
-			list(GET destinations ${i} d)
-			if(NOT IS_ABSOLUTE ${d})
-				install(FILES ${f} DESTINATION ${targetdir}/${d})
-			else()
-				install(FILES ${f} DESTINATION ${d})
-			endif()
-		endforeach()
-	endif()
+  targetdir)
+
+  get_property(files GLOBAL PROPERTY DELAYED_INSTALL_FILES)
+  get_property(destinations GLOBAL PROPERTY DELAYED_INSTALL_DESTINATIONS)
+
+  if(files)
+    list(LENGTH files n)
+    math(EXPR n "${n}-1")
+
+    foreach(i RANGE ${n})
+      list(GET files ${i} f)
+      list(GET destinations ${i} d)
+      if(NOT IS_ABSOLUTE ${d})
+        install(FILES ${f} DESTINATION ${targetdir}/${d})
+      else()
+        install(FILES ${f} DESTINATION ${d})
+      endif()
+    endforeach()
+  endif()
 endfunction()
 
 
 function(data_to_c
-	file_from file_to
-	list_to_add
-	)
+  file_from file_to
+  list_to_add
+  )
 
-	list(APPEND ${list_to_add} ${file_to})
-	set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
+  list(APPEND ${list_to_add} ${file_to})
+  set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
 
-	get_filename_component(_file_to_path ${file_to} PATH)
+  get_filename_component(_file_to_path ${file_to} PATH)
 
-	add_custom_command(
-		OUTPUT ${file_to}
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
-		COMMAND "$<TARGET_FILE:datatoc>" ${file_from} ${file_to}
-		DEPENDS ${file_from} datatoc)
+  add_custom_command(
+    OUTPUT ${file_to}
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
+    COMMAND "$<TARGET_FILE:datatoc>" ${file_from} ${file_to}
+    DEPENDS ${file_from} datatoc)
 
-	set_source_files_properties(${file_to} PROPERTIES GENERATED TRUE)
+  set_source_files_properties(${file_to} PROPERTIES GENERATED TRUE)
 endfunction()
 
 
 # same as above but generates the var name and output automatic.
 function(data_to_c_simple
-	file_from
-	list_to_add
-	)
+  file_from
+  list_to_add
+  )
 
-	# remove ../'s
-	get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from}   REALPATH)
-	get_filename_component(_file_to   ${CMAKE_CURRENT_BINARY_DIR}/${file_from}.c REALPATH)
+  # remove ../'s
+  get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from}   REALPATH)
+  get_filename_component(_file_to   ${CMAKE_CURRENT_BINARY_DIR}/${file_from}.c REALPATH)
 
-	list(APPEND ${list_to_add} ${_file_to})
-	source_group(Generated FILES ${_file_to})
-	list(APPEND ${list_to_add} ${file_from})
-	set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
+  list(APPEND ${list_to_add} ${_file_to})
+  source_group(Generated FILES ${_file_to})
+  list(APPEND ${list_to_add} ${file_from})
+  set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
 
-	get_filename_component(_file_to_path ${_file_to} PATH)
+  get_filename_component(_file_to_path ${_file_to} PATH)
 
-	add_custom_command(
-		OUTPUT  ${_file_to}
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
-		COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
-		DEPENDS ${_file_from} datatoc)
+  add_custom_command(
+    OUTPUT  ${_file_to}
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
+    COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
+    DEPENDS ${_file_from} datatoc)
 
-	set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
+  set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
 endfunction()
 
 # macro for converting pixmap directory to a png and then a c file
 function(data_to_c_simple_icons
-	path_from icon_prefix icon_names
-	list_to_add
-	)
-
-	# Conversion steps
-	#  path_from  ->  _file_from  ->  _file_to
-	#  foo/*.dat  ->  foo.png     ->  foo.png.c
-
-	get_filename_component(_path_from_abs ${path_from} ABSOLUTE)
-	# remove ../'s
-	get_filename_component(_file_from ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png   REALPATH)
-	get_filename_component(_file_to   ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png.c REALPATH)
-
-	list(APPEND ${list_to_add} ${_file_to})
-	set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
-
-	get_filename_component(_file_to_path ${_file_to} PATH)
-
-	# Construct a list of absolute paths from input
-	set(_icon_files)
-	foreach(_var ${icon_names})
-		list(APPEND _icon_files "${_path_from_abs}/${icon_prefix}${_var}.dat")
-	endforeach()
-
-	add_custom_command(
-		OUTPUT  ${_file_from} ${_file_to}
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
-		#COMMAND python3 ${CMAKE_SOURCE_DIR}/source/blender/datatoc/datatoc_icon.py ${_path_from_abs} ${_file_from}
-		COMMAND "$<TARGET_FILE:datatoc_icon>" ${_path_from_abs} ${_file_from}
-		COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
-		DEPENDS
-			${_icon_files}
-			datatoc_icon
-			datatoc
-			# could be an arg but for now we only create icons depending on UI_icons.h
-			${CMAKE_SOURCE_DIR}/source/blender/editors/include/UI_icons.h
-		)
-
-	set_source_files_properties(${_file_from} ${_file_to} PROPERTIES GENERATED TRUE)
+  path_from icon_prefix icon_names
+  list_to_add
+  )
+
+  # Conversion steps
+  #  path_from  ->  _file_from  ->  _file_to
+  #  foo/*.dat  ->  foo.png     ->  foo.png.c
+
+  get_filename_component(_path_from_abs ${path_from} ABSOLUTE)
+  # remove ../'s
+  get_filename_component(_file_from ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png   REALPATH)
+  get_filename_component(_file_to   ${CMAKE_CURRENT_BINARY_DIR}/${path_from}.png.c REALPATH)
+
+  list(APPEND ${list_to_add} ${_file_to})
+  set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
+
+  get_filename_component(_file_to_path ${_file_to} PATH)
+
+  # Construct a list of absolute paths from input
+  set(_icon_files)
+  foreach(_var ${icon_names})
+    list(APPEND _icon_files "${_path_from_abs}/${icon_prefix}${_var}.dat")
+  endforeach()
+
+  add_custom_command(
+    OUTPUT  ${_file_from} ${_file_to}
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
+    #COMMAND python3 ${CMAKE_SOURCE_DIR}/source/blender/datatoc/datatoc_icon.py ${_path_from_abs} ${_file_from}
+    COMMAND "$<TARGET_FILE:datatoc_icon>" ${_path_from_abs} ${_file_from}
+    COMMAND "$<TARGET_FILE:datatoc>" ${_file_from} ${_file_to}
+    DEPENDS
+      ${_icon_files}
+      datatoc_icon
+      datatoc
+      # could be an arg but for now we only create icons depending on UI_icons.h
+      ${CMAKE_SOURCE_DIR}/source/blender/editors/include/UI_icons.h
+    )
+
+  set_source_files_properties(${_file_from} ${_file_to} PROPERTIES GENERATED TRUE)
 endfunction()
 
 # XXX Not used for now...
 function(svg_to_png
-	file_from
-	file_to
-	dpi
-	list_to_add
-	)
-
-	# remove ../'s
-	get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
-	get_filename_component(_file_to   ${CMAKE_CURRENT_SOURCE_DIR}/${file_to}   REALPATH)
-
-	list(APPEND ${list_to_add} ${_file_to})
-	set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
-
-	find_program(INKSCAPE_EXE inkscape)
-	mark_as_advanced(INKSCAPE_EXE)
-
-	if(INKSCAPE_EXE)
-		if(APPLE)
-			# in OS X app bundle, the binary is a shim that doesn't take any
-			# command line arguments, replace it with the actual binary
-			string(REPLACE "MacOS/Inkscape" "Resources/bin/inkscape" INKSCAPE_REAL_EXE ${INKSCAPE_EXE})
-			if(EXISTS "${INKSCAPE_REAL_EXE}")
-				set(INKSCAPE_EXE ${INKSCAPE_REAL_EXE})
-			endif()
-		endif()
-
-		add_custom_command(
-			OUTPUT  ${_file_to}
-			COMMAND ${INKSCAPE_EXE} ${_file_from} --export-dpi=${dpi}  --without-gui --export-png=${_file_to}
-			DEPENDS ${_file_from} ${INKSCAPE_EXE}
-		)
-	else()
-		message(WARNING "Inkscape not found, could not re-generate ${_file_to} from ${_file_from}!")
-	endif()
+  file_from
+  file_to
+  dpi
+  list_to_add
+  )
+
+  # remove ../'s
+  get_filename_component(_file_from ${CMAKE_CURRENT_SOURCE_DIR}/${file_from} REALPATH)
+  get_filename_component(_file_to   ${CMAKE_CURRENT_SOURCE_DIR}/${file_to}   REALPATH)
+
+  list(APPEND ${list_to_add} ${_file_to})
+  set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
+
+  find_program(INKSCAPE_EXE inkscape)
+  mark_as_advanced(INKSCAPE_EXE)
+
+  if(INKSCAPE_EXE)
+    if(APPLE)
+      # in OS X app bundle, the binary is a shim that doesn't take any
+      # command line arguments, replace it with the actual binary
+      string(REPLACE "MacOS/Inkscape" "Resources/bin/inkscape" INKSCAPE_REAL_EXE ${INKSCAPE_EXE})
+      if(EXISTS "${INKSCAPE_REAL_EXE}")
+        set(INKSCAPE_EXE ${INKSCAPE_REAL_EXE})
+      endif()
+    endif()
+
+    add_custom_command(
+      OUTPUT  ${_file_to}
+      COMMAND ${INKSCAPE_EXE} ${_file_from} --export-dpi=${dpi}  --without-gui --export-png=${_file_to}
+      DEPENDS ${_file_from} ${INKSCAPE_EXE}
+    )
+  else()
+    message(WARNING "Inkscape not found, could not re-generate ${_file_to} from ${_file_from}!")
+  endif()
 endfunction()
 
 function(msgfmt_simple
-	file_from
-	list_to_add
-	)
+  file_from
+  list_to_add
+  )
 
-	# remove ../'s
-	get_filename_component(_file_from_we ${file_from} NAME_WE)
+  # remove ../'s
+  get_filename_component(_file_from_we ${file_from} NAME_WE)
 
-	get_filename_component(_file_from ${file_from} REALPATH)
-	get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${_file_from_we}.mo REALPATH)
+  get_filename_component(_file_from ${file_from} REALPATH)
+  get_filename_component(_file_to ${CMAKE_CURRENT_BINARY_DIR}/${_file_from_we}.mo REALPATH)
 
-	list(APPEND ${list_to_add} ${_file_to})
-	set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
+  list(APPEND ${list_to_add} ${_file_to})
+  set(${list_to_add} ${${list_to_add}} PARENT_SCOPE)
 
-	get_filename_component(_file_to_path ${_file_to} PATH)
+  get_filename_component(_file_to_path ${_file_to} PATH)
 
-	add_custom_command(
-		OUTPUT  ${_file_to}
-		COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
-		COMMAND "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
-		DEPENDS msgfmt ${_file_from})
+  add_custom_command(
+    OUTPUT  ${_file_to}
+    COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
+    COMMAND "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
+    DEPENDS msgfmt ${_file_from})
 
-	set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
+  set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
 endfunction()
 
 function(find_python_package
-	package
-	)
-
-	string(TOUPPER ${package} _upper_package)
-
-	# set but invalid
-	if((NOT ${PYTHON_${_upper_package}_PATH} STREQUAL "") AND
-	   (NOT ${PYTHON_${_upper_package}_PATH} MATCHES NOTFOUND))
-#		if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}/${package}")
-#			message(WARNING "PYTHON_${_upper_package}_PATH is invalid, ${package} not found in '${PYTHON_${_upper_package}_PATH}' "
-#			                "WITH_PYTHON_INSTALL_${_upper_package} option will be ignored when installing python")
-#			set(WITH_PYTHON_INSTALL${_upper_package} OFF)
-#		endif()
-	# not set, so initialize
-	else()
-		string(REPLACE "." ";" _PY_VER_SPLIT "${PYTHON_VERSION}")
-		list(GET _PY_VER_SPLIT 0 _PY_VER_MAJOR)
-
-		# re-cache
-		unset(PYTHON_${_upper_package}_PATH CACHE)
-		find_path(PYTHON_${_upper_package}_PATH
-		  NAMES
-		    ${package}
-		  HINTS
-		    "${PYTHON_LIBPATH}/"
-		    "${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
-		    "${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/"
-		  PATH_SUFFIXES
-		    site-packages
-		    dist-packages
-		    vendor-packages
-		   NO_DEFAULT_PATH
-		)
-
-		if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}")
-			message(WARNING
-				"Python package '${package}' path could not be found in:\n"
-				"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${package}', "
-				"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${package}', "
-				"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${package}', "
-				"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${package}', "
-				"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}', "
-				"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}', "
-				"\n"
-				"The 'WITH_PYTHON_INSTALL_${_upper_package}' option will be ignored when installing Python.\n"
-				"The build will be usable, only add-ons that depend on this package won't be functional."
-			)
-			set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
-		else()
-			message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
-		endif()
-	endif()
+  package
+  )
+
+  string(TOUPPER ${package} _upper_package)
+
+  # set but invalid
+  if((NOT ${PYTHON_${_upper_package}_PATH} STREQUAL "") AND
+     (NOT ${PYTHON_${_upper_package}_PATH} MATCHES NOTFOUND))
+#       if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}/${package}")
+#           message(WARNING "PYTHON_${_upper_package}_PATH is invalid, ${package} not found in '${PYTHON_${_upper_package}_PATH}' "
+#                           "WITH_PYTHON_INSTALL_${_upper_package} option will be ignored when installing python")
+#           set(WITH_PYTHON_INSTALL${_upper_package} OFF)
+#       endif()
+  # not set, so initialize
+  else()
+    string(REPLACE "." ";" _PY_VER_SPLIT "${PYTHON_VERSION}")
+    list(GET _PY_VER_SPLIT 0 _PY_VER_MAJOR)
+
+    # re-cache
+    unset(PYTHON_${_upper_package}_PATH CACHE)
+    find_path(PYTHON_${_upper_package}_PATH
+      NAMES
+        ${package}
+      HINTS
+        "${PYTHON_LIBPATH}/"
+        "${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
+        "${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/"
+      PATH_SUFFIXES
+        site-packages
+        dist-packages
+        vendor-packages
+       NO_DEFAULT_PATH
+    )
+
+    if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}")
+      message(WARNING
+        "Python package '${package}' path could not be found in:\n"
+        "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${package}', "
+        "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${package}', "
+        "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${package}', "
+        "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${package}', "
+        "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}', "
+        "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}', "
+        "\n"
+        "The 'WITH_PYTHON_INSTALL_${_upper_package}' option will be ignored when installing Python.\n"
+        "The build will be usable, only add-ons that depend on this package won't be functional."
+      )
+      set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
+    else()
+      message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
+    endif()
+  endif()
 endfunction()
 
 # like Python's 'print(dir())'
 function(print_all_vars)
-	get_cmake_property(_vars VARIABLES)
-	foreach(_var ${_vars})
-		message("${_var}=${${_var}}")
-	endforeach()
+  get_cmake_property(_vars VARIABLES)
+  foreach(_var ${_vars})
+    message("${_var}=${${_var}}")
+  endforeach()
 endfunction()
 
 macro(openmp_delayload
-	projectname
-	)
-		if(MSVC)
-			if(WITH_OPENMP)
-				if(MSVC_VERSION EQUAL 1800)
-					set(OPENMP_DLL_NAME "vcomp120")
-				else()
-					set(OPENMP_DLL_NAME "vcomp140")
-				endif()
-				SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELEASE "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
-				SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_DEBUG "/DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib")
-				SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
-				SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_MINSIZEREL "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
-			endif()
-		endif()
+  projectname
+  )
+    if(MSVC)
+      if(WITH_OPENMP)
+        if(MSVC_VERSION EQUAL 1800)
+          set(OPENMP_DLL_NAME "vcomp120")
+        else()
+          set(OPENMP_DLL_NAME "vcomp140")
+        endif()
+        SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELEASE "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
+        SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_DEBUG "/DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib")
+        SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
+        SET_TARGET_PROPERTIES(${projectname} PROPERTIES LINK_FLAGS_MINSIZEREL "/DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
+      endif()
+    endif()
 endmacro()
 
 macro(WINDOWS_SIGN_TARGET target)
-	if(WITH_WINDOWS_CODESIGN)
-		if(!SIGNTOOL_EXE)
-			error("Codesigning is enabled, but signtool is not found")
-		else()
-			if(WINDOWS_CODESIGN_PFX_PASSWORD)
-				set(CODESIGNPASSWORD /p ${WINDOWS_CODESIGN_PFX_PASSWORD})
-			else()
-				if($ENV{PFXPASSWORD})
-					set(CODESIGNPASSWORD /p $ENV{PFXPASSWORD})
-				else()
-					message(FATAL_ERROR "WITH_WINDOWS_CODESIGN is on but WINDOWS_CODESIGN_PFX_PASSWORD not set, and environment variable PFXPASSWORD not found, unable to sign code.")
-				endif()
-			endif()
-			add_custom_command(TARGET ${target}
-				POST_BUILD
-				COMMAND ${SIGNTOOL_EXE} sign /f ${WINDOWS_CODESIGN_PFX} ${CODESIGNPASSWORD} $<TARGET_FILE:${target}>
-				VERBATIM
-			)
-		endif()
-	endif()
+  if(WITH_WINDOWS_CODESIGN)
+    if(!SIGNTOOL_EXE)
+      error("Codesigning is enabled, but signtool is not found")
+    else()
+      if(WINDOWS_CODESIGN_PFX_PASSWORD)
+        set(CODESIGNPASSWORD /p ${WINDOWS_CODESIGN_PFX_PASSWORD})
+      else()
+        if($ENV{PFXPASSWORD})
+          set(CODESIGNPASSWORD /p $ENV{PFXPASSWORD})
+        else()
+          message(FATAL_ERROR "WITH_WINDOWS_CODESIGN is on but WINDOWS_CODESIGN_PFX_PASSWORD not set, and environment variable PFXPASSWORD not found, unable to sign code.")
+        endif()
+      endif()
+      add_custom_command(TARGET ${target}
+        POST_BUILD
+        COMMAND ${SIGNTOOL_EXE} sign /f ${WINDOWS_CODESIGN_PFX} ${CODESIGNPASSWORD} $<TARGET_FILE:${target}>
+        VERBATIM
+      )
+    endif()
+  endif()
 endmacro()
diff --git a/build_files/cmake/packaging.cmake b/build_files/cmake/packaging.cmake
index c086e8778c5addeed4a132354dffdac83ee7c034..06a97fc9abbae290a909c4d145707b7c52ff5420 100644
--- a/build_files/cmake/packaging.cmake
+++ b/build_files/cmake/packaging.cmake
@@ -23,15 +23,15 @@ SET(CPACK_PACKAGE_VERSION_PATCH "${PATCH_VERSION}")
 # Get the build revision, note that this can get out-of-sync, so for packaging run cmake first.
 set(MY_WC_HASH "unknown")
 if(EXISTS ${CMAKE_SOURCE_DIR}/.git/)
-	find_package(Git)
-	if(GIT_FOUND)
-		# message(STATUS "Found Git: ${GIT_EXECUTABLE}")
-		execute_process(COMMAND git rev-parse --short=12 HEAD
-		                WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-		                OUTPUT_VARIABLE MY_WC_HASH
-		                OUTPUT_STRIP_TRAILING_WHITESPACE
-		                ERROR_QUIET)
-	endif()
+  find_package(Git)
+  if(GIT_FOUND)
+    # message(STATUS "Found Git: ${GIT_EXECUTABLE}")
+    execute_process(COMMAND git rev-parse --short=12 HEAD
+                    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+                    OUTPUT_VARIABLE MY_WC_HASH
+                    OUTPUT_STRIP_TRAILING_WHITESPACE
+                    ERROR_QUIET)
+  endif()
 endif()
 set(BUILD_REV ${MY_WC_HASH})
 unset(MY_WC_HASH)
@@ -41,61 +41,61 @@ unset(MY_WC_HASH)
 execute_process(COMMAND date "+%Y%m%d" OUTPUT_VARIABLE CPACK_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
 string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER)
 if(MSVC)
-	if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-		set(PACKAGE_ARCH windows64)
-	else()
-		set(PACKAGE_ARCH windows32)
-	endif()
+  if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+    set(PACKAGE_ARCH windows64)
+  else()
+    set(PACKAGE_ARCH windows32)
+  endif()
 else(MSVC)
-	set(PACKAGE_ARCH ${CMAKE_SYSTEM_PROCESSOR})
+  set(PACKAGE_ARCH ${CMAKE_SYSTEM_PROCESSOR})
 endif()
 
 if(CPACK_OVERRIDE_PACKAGENAME)
-	set(CPACK_PACKAGE_FILE_NAME ${CPACK_OVERRIDE_PACKAGENAME}-${PACKAGE_ARCH})
+  set(CPACK_PACKAGE_FILE_NAME ${CPACK_OVERRIDE_PACKAGENAME}-${PACKAGE_ARCH})
 else()
-	set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME_LOWER}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-git${CPACK_DATE}.${BUILD_REV}-${PACKAGE_ARCH})
+  set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME_LOWER}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-git${CPACK_DATE}.${BUILD_REV}-${PACKAGE_ARCH})
 endif()
 
 if(CMAKE_SYSTEM_NAME MATCHES "Linux")
-	# RPM packages
-	include(build_files/cmake/RpmBuild.cmake)
-	if(RPMBUILD_FOUND)
-		set(CPACK_GENERATOR "RPM")
-		set(CPACK_RPM_PACKAGE_RELEASE "git${CPACK_DATE}.${BUILD_REV}")
-		set(CPACK_SET_DESTDIR "true")
-		set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
-		set(CPACK_PACKAGE_RELOCATABLE "false")
-		set(CPACK_RPM_PACKAGE_LICENSE "GPLv2+ and Apache 2.0")
-		set(CPACK_RPM_PACKAGE_GROUP "Amusements/Multimedia")
-		set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_SOURCE_DIR}/build_files/package_spec/rpm/blender.spec.in")
-	endif()
+  # RPM packages
+  include(build_files/cmake/RpmBuild.cmake)
+  if(RPMBUILD_FOUND)
+    set(CPACK_GENERATOR "RPM")
+    set(CPACK_RPM_PACKAGE_RELEASE "git${CPACK_DATE}.${BUILD_REV}")
+    set(CPACK_SET_DESTDIR "true")
+    set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
+    set(CPACK_PACKAGE_RELOCATABLE "false")
+    set(CPACK_RPM_PACKAGE_LICENSE "GPLv2+ and Apache 2.0")
+    set(CPACK_RPM_PACKAGE_GROUP "Amusements/Multimedia")
+    set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_SOURCE_DIR}/build_files/package_spec/rpm/blender.spec.in")
+  endif()
 endif()
 
 # Mac Bundle
 if(APPLE)
-	set(CPACK_GENERATOR "DragNDrop")
+  set(CPACK_GENERATOR "DragNDrop")
 
-	# Libraries are bundled directly
-	set(CPACK_COMPONENT_LIBRARIES_HIDDEN TRUE)
+  # Libraries are bundled directly
+  set(CPACK_COMPONENT_LIBRARIES_HIDDEN TRUE)
 endif()
 
 if(WIN32)
-	set(CPACK_PACKAGE_INSTALL_DIRECTORY "Blender Foundation/Blender")
-	set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Blender Foundation/Blender")
+  set(CPACK_PACKAGE_INSTALL_DIRECTORY "Blender Foundation/Blender")
+  set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Blender Foundation/Blender")
 
-	set(CPACK_NSIS_MUI_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
-	set(CPACK_NSIS_COMPRESSOR "/SOLID lzma")
+  set(CPACK_NSIS_MUI_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
+  set(CPACK_NSIS_COMPRESSOR "/SOLID lzma")
 
-	set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/release/text/GPL3-license.txt)
-	set(CPACK_WIX_PRODUCT_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
-	set(CPACK_WIX_UPGRADE_GUID "B767E4FD-7DE7-4094-B051-3AE62E13A17A")
+  set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/release/text/GPL3-license.txt)
+  set(CPACK_WIX_PRODUCT_ICON ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.ico)
+  set(CPACK_WIX_UPGRADE_GUID "B767E4FD-7DE7-4094-B051-3AE62E13A17A")
 
-	set(CPACK_WIX_TEMPLATE ${LIBDIR}/package/installer_wix/WIX.template)
-	set(CPACK_WIX_UI_BANNER ${LIBDIR}/package/installer_wix/WIX_UI_BANNER.bmp)
-	set(CPACK_WIX_UI_DIALOG ${LIBDIR}/package/installer_wix/WIX_UI_DIALOG.bmp)
+  set(CPACK_WIX_TEMPLATE ${LIBDIR}/package/installer_wix/WIX.template)
+  set(CPACK_WIX_UI_BANNER ${LIBDIR}/package/installer_wix/WIX_UI_BANNER.bmp)
+  set(CPACK_WIX_UI_DIALOG ${LIBDIR}/package/installer_wix/WIX_UI_DIALOG.bmp)
 
-	#force lzma instead of deflate
-	set(CPACK_WIX_LIGHT_EXTRA_FLAGS -dcl:high)
+  #force lzma instead of deflate
+  set(CPACK_WIX_LIGHT_EXTRA_FLAGS -dcl:high)
 endif()
 
 set(CPACK_PACKAGE_EXECUTABLES "blender" "blender")
@@ -106,30 +106,30 @@ include(CPack)
 # Target for build_archive.py script, to automatically pass along
 # version, revision, platform, build directory
 macro(add_package_archive packagename extension)
-	set(build_archive python ${CMAKE_SOURCE_DIR}/build_files/package_spec/build_archive.py)
-	set(package_output ${CMAKE_BINARY_DIR}/release/${packagename}.${extension})
+  set(build_archive python ${CMAKE_SOURCE_DIR}/build_files/package_spec/build_archive.py)
+  set(package_output ${CMAKE_BINARY_DIR}/release/${packagename}.${extension})
 
-	add_custom_target(package_archive DEPENDS ${package_output})
+  add_custom_target(package_archive DEPENDS ${package_output})
 
-	add_custom_command(
-		OUTPUT ${package_output}
-		COMMAND ${build_archive} ${packagename} ${extension} bin release
-		WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
-	unset(build_archive)
-	unset(package_output)
+  add_custom_command(
+    OUTPUT ${package_output}
+    COMMAND ${build_archive} ${packagename} ${extension} bin release
+    WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
+  unset(build_archive)
+  unset(package_output)
 endmacro()
 
 if(APPLE)
-	add_package_archive(
-		"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}"
-		"zip")
+  add_package_archive(
+    "${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}"
+    "zip")
 elseif(UNIX)
-	# platform name could be tweaked, to include glibc, and ensure processor is correct (i386 vs i686)
-	string(TOLOWER ${CMAKE_SYSTEM_NAME} PACKAGE_SYSTEM_NAME)
+  # platform name could be tweaked, to include glibc, and ensure processor is correct (i386 vs i686)
+  string(TOLOWER ${CMAKE_SYSTEM_NAME} PACKAGE_SYSTEM_NAME)
 
-	add_package_archive(
-		"${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}"
-		"tar.bz2")
+  add_package_archive(
+    "${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}"
+    "tar.bz2")
 endif()
 
 unset(MAJOR_VERSION)
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
index 4047a8f134dcab23b28a24c6642a728ebece8583..3fd07f5b9c5b7785517aa4d1392e0f67f18588d1 100644
--- a/build_files/cmake/platform/platform_apple.cmake
+++ b/build_files/cmake/platform/platform_apple.cmake
@@ -27,102 +27,102 @@ macro(find_package_wrapper)
 endmacro()
 
 if(NOT DEFINED LIBDIR)
-	set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin)
-	# Prefer lib directory paths
-	file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
-	set(CMAKE_PREFIX_PATH ${LIB_SUBDIRS})
+  set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin)
+  # Prefer lib directory paths
+  file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
+  set(CMAKE_PREFIX_PATH ${LIB_SUBDIRS})
 else()
-	message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
+  message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
 endif()
 if(NOT EXISTS "${LIBDIR}/")
-	message(FATAL_ERROR "Mac OSX requires pre-compiled libs at: '${LIBDIR}'")
+  message(FATAL_ERROR "Mac OSX requires pre-compiled libs at: '${LIBDIR}'")
 endif()
 
 if(WITH_OPENAL)
-	find_package(OpenAL)
-	if(OPENAL_FOUND)
-		set(WITH_OPENAL ON)
-	else()
-		set(WITH_OPENAL OFF)
-	endif()
+  find_package(OpenAL)
+  if(OPENAL_FOUND)
+    set(WITH_OPENAL ON)
+  else()
+    set(WITH_OPENAL OFF)
+  endif()
 endif()
 
 if(WITH_ALEMBIC)
-	set(ALEMBIC ${LIBDIR}/alembic)
-	set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
-	set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
-	set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
-	set(ALEMBIC_LIBRARIES Alembic)
-	set(ALEMBIC_FOUND ON)
+  set(ALEMBIC ${LIBDIR}/alembic)
+  set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
+  set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
+  set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
+  set(ALEMBIC_LIBRARIES Alembic)
+  set(ALEMBIC_FOUND ON)
 endif()
 
 if(WITH_OPENSUBDIV)
-	set(OPENSUBDIV ${LIBDIR}/opensubdiv)
-	set(OPENSUBDIV_LIBPATH ${OPENSUBDIV}/lib)
-	find_library(OSD_LIB_CPU NAMES osdCPU PATHS ${OPENSUBDIV_LIBPATH})
-	find_library(OSD_LIB_GPU NAMES osdGPU PATHS ${OPENSUBDIV_LIBPATH})
-	set(OPENSUBDIV_INCLUDE_DIR ${OPENSUBDIV}/include)
-	set(OPENSUBDIV_INCLUDE_DIRS ${OPENSUBDIV_INCLUDE_DIR})
-	list(APPEND OPENSUBDIV_LIBRARIES ${OSD_LIB_CPU} ${OSD_LIB_GPU})
+  set(OPENSUBDIV ${LIBDIR}/opensubdiv)
+  set(OPENSUBDIV_LIBPATH ${OPENSUBDIV}/lib)
+  find_library(OSD_LIB_CPU NAMES osdCPU PATHS ${OPENSUBDIV_LIBPATH})
+  find_library(OSD_LIB_GPU NAMES osdGPU PATHS ${OPENSUBDIV_LIBPATH})
+  set(OPENSUBDIV_INCLUDE_DIR ${OPENSUBDIV}/include)
+  set(OPENSUBDIV_INCLUDE_DIRS ${OPENSUBDIV_INCLUDE_DIR})
+  list(APPEND OPENSUBDIV_LIBRARIES ${OSD_LIB_CPU} ${OSD_LIB_GPU})
 endif()
 
 if(WITH_JACK)
-	find_library(JACK_FRAMEWORK
-		NAMES jackmp
-	)
-	set(JACK_INCLUDE_DIRS ${JACK_FRAMEWORK}/headers)
-	if(NOT JACK_FRAMEWORK)
-		set(WITH_JACK OFF)
-	endif()
+  find_library(JACK_FRAMEWORK
+    NAMES jackmp
+  )
+  set(JACK_INCLUDE_DIRS ${JACK_FRAMEWORK}/headers)
+  if(NOT JACK_FRAMEWORK)
+    set(WITH_JACK OFF)
+  endif()
 endif()
 
 if(WITH_CODEC_SNDFILE)
-	set(LIBSNDFILE ${LIBDIR}/sndfile)
-	set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
-	set(LIBSNDFILE_LIBRARIES sndfile FLAC ogg vorbis vorbisenc)
-	set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib ${LIBDIR}/ffmpeg/lib)  # TODO, deprecate
+  set(LIBSNDFILE ${LIBDIR}/sndfile)
+  set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
+  set(LIBSNDFILE_LIBRARIES sndfile FLAC ogg vorbis vorbisenc)
+  set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib ${LIBDIR}/ffmpeg/lib)  # TODO, deprecate
 endif()
 
 if(WITH_PYTHON)
-	# we use precompiled libraries for py 3.7 and up by default
-	set(PYTHON_VERSION 3.7)
-	if(NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK)
-		# normally cached but not since we include them with blender
-		set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m")
-		set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m")
-		set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a)
-		set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
-		# set(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
-	else()
-		# module must be compiled against Python framework
-		set(_py_framework "/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}")
-
-		set(PYTHON_INCLUDE_DIR "${_py_framework}/include/python${PYTHON_VERSION}m")
-		set(PYTHON_EXECUTABLE "${_py_framework}/bin/python${PYTHON_VERSION}m")
-		set(PYTHON_LIBPATH "${_py_framework}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}m")
-		#set(PYTHON_LIBRARY python${PYTHON_VERSION})
-		#set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework Python")  # won't  build with this enabled
-
-		unset(_py_framework)
-	endif()
-
-	# uncached vars
-	set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
-	set(PYTHON_LIBRARIES  "${PYTHON_LIBRARY}")
-
-	# needed for Audaspace, numpy is installed into python site-packages
-	set(PYTHON_NUMPY_INCLUDE_DIRS "${PYTHON_LIBPATH}/site-packages/numpy/core/include")
-
-	if(NOT EXISTS "${PYTHON_EXECUTABLE}")
-		message(FATAL_ERROR "Python executable missing: ${PYTHON_EXECUTABLE}")
-	endif()
+  # we use precompiled libraries for py 3.7 and up by default
+  set(PYTHON_VERSION 3.7)
+  if(NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK)
+    # normally cached but not since we include them with blender
+    set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m")
+    set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m")
+    set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a)
+    set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
+    # set(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
+  else()
+    # module must be compiled against Python framework
+    set(_py_framework "/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}")
+
+    set(PYTHON_INCLUDE_DIR "${_py_framework}/include/python${PYTHON_VERSION}m")
+    set(PYTHON_EXECUTABLE "${_py_framework}/bin/python${PYTHON_VERSION}m")
+    set(PYTHON_LIBPATH "${_py_framework}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}m")
+    #set(PYTHON_LIBRARY python${PYTHON_VERSION})
+    #set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework Python")  # won't  build with this enabled
+
+    unset(_py_framework)
+  endif()
+
+  # uncached vars
+  set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
+  set(PYTHON_LIBRARIES  "${PYTHON_LIBRARY}")
+
+  # needed for Audaspace, numpy is installed into python site-packages
+  set(PYTHON_NUMPY_INCLUDE_DIRS "${PYTHON_LIBPATH}/site-packages/numpy/core/include")
+
+  if(NOT EXISTS "${PYTHON_EXECUTABLE}")
+    message(FATAL_ERROR "Python executable missing: ${PYTHON_EXECUTABLE}")
+  endif()
 endif()
 
 if(WITH_FFTW3)
-	set(FFTW3 ${LIBDIR}/fftw3)
-	set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
-	set(FFTW3_LIBRARIES fftw3)
-	set(FFTW3_LIBPATH ${FFTW3}/lib)
+  set(FFTW3 ${LIBDIR}/fftw3)
+  set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
+  set(FFTW3_LIBRARIES fftw3)
+  set(FFTW3_LIBPATH ${FFTW3}/lib)
 endif()
 
 set(PNG_LIBRARIES png)
@@ -138,101 +138,101 @@ set(FREETYPE_LIBPATH ${FREETYPE}/lib)
 set(FREETYPE_LIBRARY freetype)
 
 if(WITH_IMAGE_OPENEXR)
-	set(OPENEXR ${LIBDIR}/openexr)
-	set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
-	set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
-	set(OPENEXR_LIBRARIES
-		Iex
-		Half
-		IlmImf
-		Imath
-		IlmThread)
-	set(OPENEXR_LIBPATH ${OPENEXR}/lib)
+  set(OPENEXR ${LIBDIR}/openexr)
+  set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
+  set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
+  set(OPENEXR_LIBRARIES
+    Iex
+    Half
+    IlmImf
+    Imath
+    IlmThread)
+  set(OPENEXR_LIBPATH ${OPENEXR}/lib)
 endif()
 
 if(WITH_CODEC_FFMPEG)
-	set(FFMPEG ${LIBDIR}/ffmpeg)
-	set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
-	set(FFMPEG_LIBRARIES
-		avcodec avdevice avformat avutil
-		mp3lame swscale x264 xvidcore
-		theora theoradec theoraenc
-		vorbis vorbisenc vorbisfile ogg
-		vpx swresample)
-	set(FFMPEG_LIBPATH ${FFMPEG}/lib)
+  set(FFMPEG ${LIBDIR}/ffmpeg)
+  set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
+  set(FFMPEG_LIBRARIES
+    avcodec avdevice avformat avutil
+    mp3lame swscale x264 xvidcore
+    theora theoradec theoraenc
+    vorbis vorbisenc vorbisfile ogg
+    vpx swresample)
+  set(FFMPEG_LIBPATH ${FFMPEG}/lib)
 endif()
 
 if(WITH_IMAGE_OPENJPEG OR WITH_CODEC_FFMPEG)
-	# use openjpeg from libdir that is linked into ffmpeg
-	set(OPENJPEG ${LIBDIR}/openjpeg)
-	set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include)
-	set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/libopenjp2.a)
+  # use openjpeg from libdir that is linked into ffmpeg
+  set(OPENJPEG ${LIBDIR}/openjpeg)
+  set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include)
+  set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/libopenjp2.a)
 endif()
 
 find_library(SYSTEMSTUBS_LIBRARY
-	NAMES
-	SystemStubs
-	PATHS
+  NAMES
+  SystemStubs
+  PATHS
 )
 mark_as_advanced(SYSTEMSTUBS_LIBRARY)
 if(SYSTEMSTUBS_LIBRARY)
-	list(APPEND PLATFORM_LINKLIBS SystemStubs)
+  list(APPEND PLATFORM_LINKLIBS SystemStubs)
 endif()
 
 set(PLATFORM_CFLAGS "-pipe -funsigned-char")
 set(PLATFORM_LINKFLAGS
-	"-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Cocoa -framework Carbon -framework AudioUnit -framework AudioToolbox -framework CoreAudio"
+  "-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Cocoa -framework Carbon -framework AudioUnit -framework AudioToolbox -framework CoreAudio"
 )
 
 list(APPEND PLATFORM_LINKLIBS c++)
 
 if(WITH_JACK)
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -F/Library/Frameworks -weak_framework jackmp")
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -F/Library/Frameworks -weak_framework jackmp")
 endif()
 
 if(WITH_PYTHON_MODULE OR WITH_PYTHON_FRAMEWORK)
-	# force cmake to link right framework
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/Python")
+  # force cmake to link right framework
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/Python")
 endif()
 
 if(WITH_OPENCOLLADA)
-	set(OPENCOLLADA ${LIBDIR}/opencollada)
-
-	set(OPENCOLLADA_INCLUDE_DIRS
-		${LIBDIR}/opencollada/include/COLLADAStreamWriter
-		${LIBDIR}/opencollada/include/COLLADABaseUtils
-		${LIBDIR}/opencollada/include/COLLADAFramework
-		${LIBDIR}/opencollada/include/COLLADASaxFrameworkLoader
-		${LIBDIR}/opencollada/include/GeneratedSaxParser
-	)
-
-	set(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
-	set(OPENCOLLADA_LIBRARIES
-		OpenCOLLADASaxFrameworkLoader
-		-lOpenCOLLADAFramework
-		-lOpenCOLLADABaseUtils
-		-lOpenCOLLADAStreamWriter
-		-lMathMLSolver
-		-lGeneratedSaxParser
-		-lbuffer -lftoa -lUTF
-		${OPENCOLLADA_LIBPATH}/libxml2.a
-	)
-	# PCRE is bundled with openCollada
-	#set(PCRE ${LIBDIR}/pcre)
-	#set(PCRE_LIBPATH ${PCRE}/lib)
-	set(PCRE_LIBRARIES pcre)
-	# libxml2 is used
-	#set(EXPAT ${LIBDIR}/expat)
-	#set(EXPAT_LIBPATH ${EXPAT}/lib)
-	set(EXPAT_LIB)
+  set(OPENCOLLADA ${LIBDIR}/opencollada)
+
+  set(OPENCOLLADA_INCLUDE_DIRS
+    ${LIBDIR}/opencollada/include/COLLADAStreamWriter
+    ${LIBDIR}/opencollada/include/COLLADABaseUtils
+    ${LIBDIR}/opencollada/include/COLLADAFramework
+    ${LIBDIR}/opencollada/include/COLLADASaxFrameworkLoader
+    ${LIBDIR}/opencollada/include/GeneratedSaxParser
+  )
+
+  set(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
+  set(OPENCOLLADA_LIBRARIES
+    OpenCOLLADASaxFrameworkLoader
+    -lOpenCOLLADAFramework
+    -lOpenCOLLADABaseUtils
+    -lOpenCOLLADAStreamWriter
+    -lMathMLSolver
+    -lGeneratedSaxParser
+    -lbuffer -lftoa -lUTF
+    ${OPENCOLLADA_LIBPATH}/libxml2.a
+  )
+  # PCRE is bundled with openCollada
+  #set(PCRE ${LIBDIR}/pcre)
+  #set(PCRE_LIBPATH ${PCRE}/lib)
+  set(PCRE_LIBRARIES pcre)
+  # libxml2 is used
+  #set(EXPAT ${LIBDIR}/expat)
+  #set(EXPAT_LIBPATH ${EXPAT}/lib)
+  set(EXPAT_LIB)
 endif()
 
 if(WITH_SDL)
-	set(SDL ${LIBDIR}/sdl)
-	set(SDL_INCLUDE_DIR ${SDL}/include)
-	set(SDL_LIBRARY SDL2)
-	set(SDL_LIBPATH ${SDL}/lib)
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -framework ForceFeedback")
+  set(SDL ${LIBDIR}/sdl)
+  set(SDL_INCLUDE_DIR ${SDL}/include)
+  set(SDL_LIBRARY SDL2)
+  set(SDL_LIBPATH ${SDL}/lib)
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -framework ForceFeedback")
 endif()
 
 set(PNG "${LIBDIR}/png")
@@ -244,166 +244,166 @@ set(JPEG_INCLUDE_DIR "${JPEG}/include")
 set(JPEG_LIBPATH ${JPEG}/lib)
 
 if(WITH_IMAGE_TIFF)
-	set(TIFF ${LIBDIR}/tiff)
-	set(TIFF_INCLUDE_DIR ${TIFF}/include)
-	set(TIFF_LIBRARY tiff)
-	set(TIFF_LIBPATH ${TIFF}/lib)
+  set(TIFF ${LIBDIR}/tiff)
+  set(TIFF_INCLUDE_DIR ${TIFF}/include)
+  set(TIFF_LIBRARY tiff)
+  set(TIFF_LIBPATH ${TIFF}/lib)
 endif()
 
 if(WITH_BOOST)
-	set(BOOST ${LIBDIR}/boost)
-	set(BOOST_INCLUDE_DIR ${BOOST}/include)
-	set(BOOST_POSTFIX)
-	set(BOOST_LIBRARIES
-		boost_date_time${BOOST_POSTFIX}
-		boost_filesystem${BOOST_POSTFIX}
-		boost_regex${BOOST_POSTFIX}
-		boost_system${BOOST_POSTFIX}
-		boost_thread${BOOST_POSTFIX}
-		boost_wave${BOOST_POSTFIX}
-	)
-	if(WITH_INTERNATIONAL)
-		list(APPEND BOOST_LIBRARIES boost_locale${BOOST_POSTFIX})
-	endif()
-	if(WITH_CYCLES_NETWORK)
-		list(APPEND BOOST_LIBRARIES boost_serialization${BOOST_POSTFIX})
-	endif()
-	if(WITH_OPENVDB)
-		list(APPEND BOOST_LIBRARIES boost_iostreams${BOOST_POSTFIX})
-	endif()
-	set(BOOST_LIBPATH ${BOOST}/lib)
-	set(BOOST_DEFINITIONS)
+  set(BOOST ${LIBDIR}/boost)
+  set(BOOST_INCLUDE_DIR ${BOOST}/include)
+  set(BOOST_POSTFIX)
+  set(BOOST_LIBRARIES
+    boost_date_time${BOOST_POSTFIX}
+    boost_filesystem${BOOST_POSTFIX}
+    boost_regex${BOOST_POSTFIX}
+    boost_system${BOOST_POSTFIX}
+    boost_thread${BOOST_POSTFIX}
+    boost_wave${BOOST_POSTFIX}
+  )
+  if(WITH_INTERNATIONAL)
+    list(APPEND BOOST_LIBRARIES boost_locale${BOOST_POSTFIX})
+  endif()
+  if(WITH_CYCLES_NETWORK)
+    list(APPEND BOOST_LIBRARIES boost_serialization${BOOST_POSTFIX})
+  endif()
+  if(WITH_OPENVDB)
+    list(APPEND BOOST_LIBRARIES boost_iostreams${BOOST_POSTFIX})
+  endif()
+  set(BOOST_LIBPATH ${BOOST}/lib)
+  set(BOOST_DEFINITIONS)
 endif()
 
 if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG)
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -liconv") # boost_locale and ffmpeg needs it !
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -liconv") # boost_locale and ffmpeg needs it !
 endif()
 
 if(WITH_OPENIMAGEIO)
-	set(OPENIMAGEIO ${LIBDIR}/openimageio)
-	set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
-	set(OPENIMAGEIO_LIBRARIES
-		${OPENIMAGEIO}/lib/libOpenImageIO.a
-		${PNG_LIBRARIES}
-		${JPEG_LIBRARIES}
-		${TIFF_LIBRARY}
-		${OPENEXR_LIBRARIES}
-		${OPENJPEG_LIBRARIES}
-		${ZLIB_LIBRARIES}
-	)
-	set(OPENIMAGEIO_LIBPATH
-		${OPENIMAGEIO}/lib
-		${JPEG_LIBPATH}
-		${PNG_LIBPATH}
-		${TIFF_LIBPATH}
-		${OPENEXR_LIBPATH}
-		${ZLIB_LIBPATH}
-	)
-	set(OPENIMAGEIO_DEFINITIONS "-DOIIO_STATIC_BUILD")
-	set(OPENIMAGEIO_IDIFF "${LIBDIR}/openimageio/bin/idiff")
+  set(OPENIMAGEIO ${LIBDIR}/openimageio)
+  set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
+  set(OPENIMAGEIO_LIBRARIES
+    ${OPENIMAGEIO}/lib/libOpenImageIO.a
+    ${PNG_LIBRARIES}
+    ${JPEG_LIBRARIES}
+    ${TIFF_LIBRARY}
+    ${OPENEXR_LIBRARIES}
+    ${OPENJPEG_LIBRARIES}
+    ${ZLIB_LIBRARIES}
+  )
+  set(OPENIMAGEIO_LIBPATH
+    ${OPENIMAGEIO}/lib
+    ${JPEG_LIBPATH}
+    ${PNG_LIBPATH}
+    ${TIFF_LIBPATH}
+    ${OPENEXR_LIBPATH}
+    ${ZLIB_LIBPATH}
+  )
+  set(OPENIMAGEIO_DEFINITIONS "-DOIIO_STATIC_BUILD")
+  set(OPENIMAGEIO_IDIFF "${LIBDIR}/openimageio/bin/idiff")
 endif()
 
 if(WITH_OPENCOLORIO)
-	set(OPENCOLORIO ${LIBDIR}/opencolorio)
-	set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
-	set(OPENCOLORIO_LIBRARIES OpenColorIO tinyxml yaml-cpp)
-	set(OPENCOLORIO_LIBPATH ${OPENCOLORIO}/lib)
+  set(OPENCOLORIO ${LIBDIR}/opencolorio)
+  set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
+  set(OPENCOLORIO_LIBRARIES OpenColorIO tinyxml yaml-cpp)
+  set(OPENCOLORIO_LIBPATH ${OPENCOLORIO}/lib)
 endif()
 
 if(WITH_OPENVDB)
-	set(OPENVDB ${LIBDIR}/openvdb)
-	set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
-	set(TBB_INCLUDE_DIRS ${LIBDIR}/tbb/include)
-	set(TBB_LIBRARIES ${LIBDIR}/tbb/lib/libtbb.a)
-	set(OPENVDB_LIBRARIES openvdb blosc ${TBB_LIBRARIES})
-	set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
-	set(OPENVDB_DEFINITIONS)
+  set(OPENVDB ${LIBDIR}/openvdb)
+  set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
+  set(TBB_INCLUDE_DIRS ${LIBDIR}/tbb/include)
+  set(TBB_LIBRARIES ${LIBDIR}/tbb/lib/libtbb.a)
+  set(OPENVDB_LIBRARIES openvdb blosc ${TBB_LIBRARIES})
+  set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
+  set(OPENVDB_DEFINITIONS)
 endif()
 
 if(WITH_LLVM)
-	set(LLVM_ROOT_DIR ${LIBDIR}/llvm)
-	set(LLVM_VERSION 3.4)
-	if(EXISTS "${LLVM_ROOT_DIR}/bin/llvm-config")
-		set(LLVM_CONFIG "${LLVM_ROOT_DIR}/bin/llvm-config")
-	else()
-		set(LLVM_CONFIG llvm-config)
-	endif()
-	execute_process(COMMAND ${LLVM_CONFIG} --version
-			OUTPUT_VARIABLE LLVM_VERSION
-			OUTPUT_STRIP_TRAILING_WHITESPACE)
-	execute_process(COMMAND ${LLVM_CONFIG} --prefix
-			OUTPUT_VARIABLE LLVM_ROOT_DIR
-			OUTPUT_STRIP_TRAILING_WHITESPACE)
-	execute_process(COMMAND ${LLVM_CONFIG} --libdir
-			OUTPUT_VARIABLE LLVM_LIBPATH
-			OUTPUT_STRIP_TRAILING_WHITESPACE)
-	find_library(LLVM_LIBRARY
-		      NAMES LLVMAnalysis # first of a whole bunch of libs to get
-		      PATHS ${LLVM_LIBPATH})
-
-	if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
-		if(LLVM_STATIC)
-			# if static LLVM libraries were requested, use llvm-config to generate
-			# the list of what libraries we need, and substitute that in the right
-			# way for LLVM_LIBRARY.
-			execute_process(COMMAND ${LLVM_CONFIG} --libfiles
-					OUTPUT_VARIABLE LLVM_LIBRARY
-					OUTPUT_STRIP_TRAILING_WHITESPACE)
-			string(REPLACE ".a /" ".a;/" LLVM_LIBRARY ${LLVM_LIBRARY})
-		else()
-			set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -lLLVM-3.4")
-		endif()
-	else()
-		message(FATAL_ERROR "LLVM not found.")
-	endif()
+  set(LLVM_ROOT_DIR ${LIBDIR}/llvm)
+  set(LLVM_VERSION 3.4)
+  if(EXISTS "${LLVM_ROOT_DIR}/bin/llvm-config")
+    set(LLVM_CONFIG "${LLVM_ROOT_DIR}/bin/llvm-config")
+  else()
+    set(LLVM_CONFIG llvm-config)
+  endif()
+  execute_process(COMMAND ${LLVM_CONFIG} --version
+      OUTPUT_VARIABLE LLVM_VERSION
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
+  execute_process(COMMAND ${LLVM_CONFIG} --prefix
+      OUTPUT_VARIABLE LLVM_ROOT_DIR
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
+  execute_process(COMMAND ${LLVM_CONFIG} --libdir
+      OUTPUT_VARIABLE LLVM_LIBPATH
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
+  find_library(LLVM_LIBRARY
+          NAMES LLVMAnalysis # first of a whole bunch of libs to get
+          PATHS ${LLVM_LIBPATH})
+
+  if(LLVM_LIBRARY AND LLVM_ROOT_DIR AND LLVM_LIBPATH)
+    if(LLVM_STATIC)
+      # if static LLVM libraries were requested, use llvm-config to generate
+      # the list of what libraries we need, and substitute that in the right
+      # way for LLVM_LIBRARY.
+      execute_process(COMMAND ${LLVM_CONFIG} --libfiles
+          OUTPUT_VARIABLE LLVM_LIBRARY
+          OUTPUT_STRIP_TRAILING_WHITESPACE)
+      string(REPLACE ".a /" ".a;/" LLVM_LIBRARY ${LLVM_LIBRARY})
+    else()
+      set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -lLLVM-3.4")
+    endif()
+  else()
+    message(FATAL_ERROR "LLVM not found.")
+  endif()
 endif()
 
 if(WITH_CYCLES_OSL)
-	set(CYCLES_OSL ${LIBDIR}/osl)
-
-	find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
-	# WARNING! depends on correct order of OSL libs linking
-	list(APPEND OSL_LIBRARIES ${OSL_LIB_COMP} -force_load ${OSL_LIB_EXEC} ${OSL_LIB_QUERY})
-	find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
-	find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
-
-	if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
-		set(OSL_FOUND TRUE)
-	else()
-		message(STATUS "OSL not found")
-		set(WITH_CYCLES_OSL OFF)
-	endif()
+  set(CYCLES_OSL ${LIBDIR}/osl)
+
+  find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
+  # WARNING! depends on correct order of OSL libs linking
+  list(APPEND OSL_LIBRARIES ${OSL_LIB_COMP} -force_load ${OSL_LIB_EXEC} ${OSL_LIB_QUERY})
+  find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
+  find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
+
+  if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
+    set(OSL_FOUND TRUE)
+  else()
+    message(STATUS "OSL not found")
+    set(WITH_CYCLES_OSL OFF)
+  endif()
 endif()
 
 if(WITH_CYCLES_EMBREE)
-	find_package(Embree 3.2.4 REQUIRED)
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Xlinker -stack_size -Xlinker 0x100000")
+  find_package(Embree 3.2.4 REQUIRED)
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Xlinker -stack_size -Xlinker 0x100000")
 endif()
 
 # CMake FindOpenMP doesn't know about AppleClang before 3.12, so provide custom flags.
 if(WITH_OPENMP)
-	if(CMAKE_C_COMPILER_ID MATCHES "AppleClang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "7.0")
-		# Use OpenMP from our precompiled libraries.
-		message(STATUS "Using ${LIBDIR}/openmp for OpenMP")
-		set(OPENMP_CUSTOM ON)
-		set(OPENMP_FOUND ON)
-		set(OpenMP_C_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
-		set(OpenMP_CXX_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
-		set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L'${LIBDIR}/openmp/lib' -lomp")
-
-		# Copy libomp.dylib to allow executables like datatoc to work.
-		if(CMAKE_MAKE_PROGRAM MATCHES "xcodebuild")
-			set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}/bin")
-		else()
-			set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}")
-		endif()
-
-		execute_process(
-				COMMAND mkdir -p ${OPENMP_DYLIB_AUX_PATH}/Resources/lib
-				COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${OPENMP_DYLIB_AUX_PATH}/Resources/lib/libomp.dylib)
-	endif()
+  if(CMAKE_C_COMPILER_ID MATCHES "AppleClang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "7.0")
+    # Use OpenMP from our precompiled libraries.
+    message(STATUS "Using ${LIBDIR}/openmp for OpenMP")
+    set(OPENMP_CUSTOM ON)
+    set(OPENMP_FOUND ON)
+    set(OpenMP_C_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
+    set(OpenMP_CXX_FLAGS "-Xclang -fopenmp -I'${LIBDIR}/openmp/include'")
+    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L'${LIBDIR}/openmp/lib' -lomp")
+
+    # Copy libomp.dylib to allow executables like datatoc to work.
+    if(CMAKE_MAKE_PROGRAM MATCHES "xcodebuild")
+      set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}/bin")
+    else()
+      set(OPENMP_DYLIB_AUX_PATH "${CMAKE_BINARY_DIR}")
+    endif()
+
+    execute_process(
+        COMMAND mkdir -p ${OPENMP_DYLIB_AUX_PATH}/Resources/lib
+        COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${OPENMP_DYLIB_AUX_PATH}/Resources/lib/libomp.dylib)
+  endif()
 endif()
 
 set(EXETYPE MACOSX_BUNDLE)
@@ -411,24 +411,24 @@ set(EXETYPE MACOSX_BUNDLE)
 set(CMAKE_C_FLAGS_DEBUG "-fno-strict-aliasing -g")
 set(CMAKE_CXX_FLAGS_DEBUG "-fno-strict-aliasing -g")
 if(CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" OR CMAKE_OSX_ARCHITECTURES MATCHES "i386")
-	set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
-	set(CMAKE_C_FLAGS_RELEASE "-O2 -mdynamic-no-pic  -msse -msse2 -msse3 -mssse3")
-	if(NOT CMAKE_C_COMPILER_ID MATCHES "Clang")
-		set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ftree-vectorize  -fvariable-expansion-in-unroller")
-		set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ftree-vectorize  -fvariable-expansion-in-unroller")
-	endif()
+  set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic -msse -msse2 -msse3 -mssse3")
+  set(CMAKE_C_FLAGS_RELEASE "-O2 -mdynamic-no-pic  -msse -msse2 -msse3 -mssse3")
+  if(NOT CMAKE_C_COMPILER_ID MATCHES "Clang")
+    set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ftree-vectorize  -fvariable-expansion-in-unroller")
+    set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ftree-vectorize  -fvariable-expansion-in-unroller")
+  endif()
 else()
-	set(CMAKE_C_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
-	set(CMAKE_CXX_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
+  set(CMAKE_C_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
+  set(CMAKE_CXX_FLAGS_RELEASE "-mdynamic-no-pic -fno-strict-aliasing")
 endif()
 
 if(${XCODE_VERSION} VERSION_EQUAL 5 OR ${XCODE_VERSION} VERSION_GREATER 5)
-	# Xcode 5 is always using CLANG, which has too low template depth of 128 for libmv
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth=1024")
+  # Xcode 5 is always using CLANG, which has too low template depth of 128 for libmv
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth=1024")
 endif()
 # Get rid of eventually clashes, we export some symbols explicitly as local
 set(PLATFORM_LINKFLAGS
-	"${PLATFORM_LINKFLAGS} -Xlinker -unexported_symbols_list -Xlinker '${CMAKE_SOURCE_DIR}/source/creator/osx_locals.map'"
+  "${PLATFORM_LINKFLAGS} -Xlinker -unexported_symbols_list -Xlinker '${CMAKE_SOURCE_DIR}/source/creator/osx_locals.map'"
 )
 
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
diff --git a/build_files/cmake/platform/platform_apple_xcode.cmake b/build_files/cmake/platform/platform_apple_xcode.cmake
index 27d337753d80e2c4c66015ee60b19c4070b4dfa4..81bd6f906ded6731a229544948d38ab91c095cfe 100644
--- a/build_files/cmake/platform/platform_apple_xcode.cmake
+++ b/build_files/cmake/platform/platform_apple_xcode.cmake
@@ -25,92 +25,92 @@
 cmake_minimum_required(VERSION 3.0.0)
 
 if(NOT CMAKE_OSX_ARCHITECTURES)
-	set(CMAKE_OSX_ARCHITECTURES x86_64 CACHE STRING
-		"Choose the architecture you want to build Blender for: i386, x86_64 or ppc"
-		FORCE)
+  set(CMAKE_OSX_ARCHITECTURES x86_64 CACHE STRING
+    "Choose the architecture you want to build Blender for: i386, x86_64 or ppc"
+    FORCE)
 endif()
 
 if(NOT DEFINED OSX_SYSTEM)
-	execute_process(
-			COMMAND xcodebuild -version -sdk macosx SDKVersion
-			OUTPUT_VARIABLE OSX_SYSTEM
-			OUTPUT_STRIP_TRAILING_WHITESPACE)
+  execute_process(
+      COMMAND xcodebuild -version -sdk macosx SDKVersion
+      OUTPUT_VARIABLE OSX_SYSTEM
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
 endif()
 
 # workaround for incorrect cmake xcode lookup for developer previews - XCODE_VERSION does not
 # take xcode-select path into account but would always look  into /Applications/Xcode.app
 # while dev versions are named Xcode<version>-DP<preview_number>
 execute_process(
-		COMMAND xcode-select --print-path
-		OUTPUT_VARIABLE XCODE_CHECK OUTPUT_STRIP_TRAILING_WHITESPACE)
+    COMMAND xcode-select --print-path
+    OUTPUT_VARIABLE XCODE_CHECK OUTPUT_STRIP_TRAILING_WHITESPACE)
 string(REPLACE "/Contents/Developer" "" XCODE_BUNDLE ${XCODE_CHECK}) # truncate to bundlepath in any case
 
 if(${CMAKE_GENERATOR} MATCHES "Xcode")
 
-	# earlier xcode has no bundled developer dir, no sense in getting xcode path from
-	if(${XCODE_VERSION} VERSION_GREATER 4.2)
-		# reduce to XCode name without dp extension
-		string(SUBSTRING "${XCODE_CHECK}" 14 6 DP_NAME)
-		if(${DP_NAME} MATCHES Xcode5)
-			set(XCODE_VERSION 5)
-		endif()
-	endif()
+  # earlier xcode has no bundled developer dir, no sense in getting xcode path from
+  if(${XCODE_VERSION} VERSION_GREATER 4.2)
+    # reduce to XCode name without dp extension
+    string(SUBSTRING "${XCODE_CHECK}" 14 6 DP_NAME)
+    if(${DP_NAME} MATCHES Xcode5)
+      set(XCODE_VERSION 5)
+    endif()
+  endif()
 
-	##### cmake incompatibility with xcode  4.3 and higher #####
-	if(${XCODE_VERSION} MATCHES '') # cmake fails due looking for xcode in the wrong path, thus will be empty var
-		message(FATAL_ERROR "Xcode 4.3 and higher must be used with cmake 2.8-8 or higher")
-	endif()
-	### end cmake incompatibility with xcode 4.3 and higher ###
+  ##### cmake incompatibility with xcode  4.3 and higher #####
+  if(${XCODE_VERSION} MATCHES '') # cmake fails due looking for xcode in the wrong path, thus will be empty var
+    message(FATAL_ERROR "Xcode 4.3 and higher must be used with cmake 2.8-8 or higher")
+  endif()
+  ### end cmake incompatibility with xcode 4.3 and higher ###
 
-	if(${XCODE_VERSION} VERSION_EQUAL 4 OR ${XCODE_VERSION} VERSION_GREATER 4 AND ${XCODE_VERSION} VERSION_LESS 4.3)
-		# Xcode 4 defaults to the Apple LLVM Compiler.
-		# Override the default compiler selection because Blender only compiles with gcc up to xcode 4.2
-		set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
-		message(STATUS "Setting compiler to: " ${CMAKE_XCODE_ATTRIBUTE_GCC_VERSION})
-	endif()
+  if(${XCODE_VERSION} VERSION_EQUAL 4 OR ${XCODE_VERSION} VERSION_GREATER 4 AND ${XCODE_VERSION} VERSION_LESS 4.3)
+    # Xcode 4 defaults to the Apple LLVM Compiler.
+    # Override the default compiler selection because Blender only compiles with gcc up to xcode 4.2
+    set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
+    message(STATUS "Setting compiler to: " ${CMAKE_XCODE_ATTRIBUTE_GCC_VERSION})
+  endif()
 else() # unix makefile generator does not fill XCODE_VERSION var, so we get it with a command
-	execute_process(COMMAND xcodebuild -version OUTPUT_VARIABLE XCODE_VERS_BUILD_NR)
-	string(SUBSTRING "${XCODE_VERS_BUILD_NR}" 6 3 XCODE_VERSION) # truncate away build-nr
-	unset(XCODE_VERS_BUILD_NR)
+  execute_process(COMMAND xcodebuild -version OUTPUT_VARIABLE XCODE_VERS_BUILD_NR)
+  string(SUBSTRING "${XCODE_VERS_BUILD_NR}" 6 3 XCODE_VERSION) # truncate away build-nr
+  unset(XCODE_VERS_BUILD_NR)
 endif()
 
 message(STATUS "Detected OS X ${OSX_SYSTEM} and Xcode ${XCODE_VERSION} at ${XCODE_BUNDLE}")
 
 if(${XCODE_VERSION} VERSION_LESS 4.3)
-	# use guaranteed existing sdk
-	set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk CACHE PATH "" FORCE)
+  # use guaranteed existing sdk
+  set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk CACHE PATH "" FORCE)
 else()
-	# note: xcode-select path could be ambiguous,
-	# cause /Applications/Xcode.app/Contents/Developer or /Applications/Xcode.app would be allowed
-	# so i use a selfcomposed bundlepath here
-	set(OSX_SYSROOT_PREFIX ${XCODE_BUNDLE}/Contents/Developer/Platforms/MacOSX.platform)
-	message(STATUS "OSX_SYSROOT_PREFIX: " ${OSX_SYSROOT_PREFIX})
-	set(OSX_DEVELOPER_PREFIX /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk) # use guaranteed existing sdk
-	set(CMAKE_OSX_SYSROOT ${OSX_SYSROOT_PREFIX}/${OSX_DEVELOPER_PREFIX} CACHE PATH "" FORCE)
-	if(${CMAKE_GENERATOR} MATCHES "Xcode")
-		# to silence sdk not found warning, just overrides CMAKE_OSX_SYSROOT
-		set(CMAKE_XCODE_ATTRIBUTE_SDKROOT macosx${OSX_SYSTEM})
-	endif()
+  # note: xcode-select path could be ambiguous,
+  # cause /Applications/Xcode.app/Contents/Developer or /Applications/Xcode.app would be allowed
+  # so i use a selfcomposed bundlepath here
+  set(OSX_SYSROOT_PREFIX ${XCODE_BUNDLE}/Contents/Developer/Platforms/MacOSX.platform)
+  message(STATUS "OSX_SYSROOT_PREFIX: " ${OSX_SYSROOT_PREFIX})
+  set(OSX_DEVELOPER_PREFIX /Developer/SDKs/MacOSX${OSX_SYSTEM}.sdk) # use guaranteed existing sdk
+  set(CMAKE_OSX_SYSROOT ${OSX_SYSROOT_PREFIX}/${OSX_DEVELOPER_PREFIX} CACHE PATH "" FORCE)
+  if(${CMAKE_GENERATOR} MATCHES "Xcode")
+    # to silence sdk not found warning, just overrides CMAKE_OSX_SYSROOT
+    set(CMAKE_XCODE_ATTRIBUTE_SDKROOT macosx${OSX_SYSTEM})
+  endif()
 endif()
 
 if(OSX_SYSTEM MATCHES 10.9)
-	# make sure syslibs and headers are looked up in sdk ( especially for 10.9 openGL atm. )
-	set(CMAKE_FIND_ROOT_PATH ${CMAKE_OSX_SYSROOT})
+  # make sure syslibs and headers are looked up in sdk ( especially for 10.9 openGL atm. )
+  set(CMAKE_FIND_ROOT_PATH ${CMAKE_OSX_SYSROOT})
 endif()
 
 # 10.9 is our min. target, if you use higher sdk, weak linking happens
 if(CMAKE_OSX_DEPLOYMENT_TARGET)
-	if(${CMAKE_OSX_DEPLOYMENT_TARGET} VERSION_LESS 10.9)
-		message(STATUS "Setting deployment target to 10.9, lower versions are not supported")
-		set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
-	endif()
+  if(${CMAKE_OSX_DEPLOYMENT_TARGET} VERSION_LESS 10.9)
+    message(STATUS "Setting deployment target to 10.9, lower versions are not supported")
+    set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
+  endif()
 else()
-	set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
+  set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
 endif()
 
 if(NOT ${CMAKE_GENERATOR} MATCHES "Xcode")
-	# force CMAKE_OSX_DEPLOYMENT_TARGET for makefiles, will not work else ( cmake bug ? )
-	set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
-	add_definitions("-DMACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+  # force CMAKE_OSX_DEPLOYMENT_TARGET for makefiles, will not work else ( cmake bug ? )
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+  add_definitions("-DMACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}")
 endif()
diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake
index 0d486c84fe65ce2747924e9ce0a82f5b337b5cea..0f5b45d722b2cb43b10feb4b0fb585a66a26b4d4 100644
--- a/build_files/cmake/platform/platform_unix.cmake
+++ b/build_files/cmake/platform/platform_unix.cmake
@@ -22,34 +22,34 @@
 
 # Detect precompiled library directory
 if(NOT DEFINED LIBDIR)
-	set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR})
-	string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME)
-	set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME})
+  set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR})
+  string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME)
+  set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_NAME})
 else()
-	message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
+  message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
 endif()
 
 if(EXISTS ${LIBDIR})
-	file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
-	# NOTE: Make sure "proper" compiled zlib comes first before the one
-	# which is a part of OpenCollada. They have different ABI, and we
-	# do need to use the official one.
-	set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
-	set(WITH_STATIC_LIBS ON)
-	set(WITH_OPENMP_STATIC ON)
+  file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
+  # NOTE: Make sure "proper" compiled zlib comes first before the one
+  # which is a part of OpenCollada. They have different ABI, and we
+  # do need to use the official one.
+  set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
+  set(WITH_STATIC_LIBS ON)
+  set(WITH_OPENMP_STATIC ON)
 endif()
 
 if(WITH_STATIC_LIBS)
-	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++")
+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++")
 endif()
 
 # Wrapper to prefer static libraries
 macro(find_package_wrapper)
-	if(WITH_STATIC_LIBS)
-		find_package_static(${ARGV})
-	else()
-		find_package(${ARGV})
-	endif()
+  if(WITH_STATIC_LIBS)
+    find_package_static(${ARGV})
+  else()
+    find_package(${ARGV})
+  endif()
 endmacro()
 
 find_package_wrapper(JPEG REQUIRED)
@@ -58,360 +58,360 @@ find_package_wrapper(ZLIB REQUIRED)
 find_package_wrapper(Freetype REQUIRED)
 
 if(WITH_LZO AND WITH_SYSTEM_LZO)
-	find_package_wrapper(LZO)
-	if(NOT LZO_FOUND)
-		message(FATAL_ERROR "Failed finding system LZO version!")
-	endif()
+  find_package_wrapper(LZO)
+  if(NOT LZO_FOUND)
+    message(FATAL_ERROR "Failed finding system LZO version!")
+  endif()
 endif()
 
 if(WITH_SYSTEM_EIGEN3)
-	find_package_wrapper(Eigen3)
-	if(NOT EIGEN3_FOUND)
-		message(FATAL_ERROR "Failed finding system Eigen3 version!")
-	endif()
+  find_package_wrapper(Eigen3)
+  if(NOT EIGEN3_FOUND)
+    message(FATAL_ERROR "Failed finding system Eigen3 version!")
+  endif()
 endif()
 # else values are set below for all platforms
 
 if(WITH_PYTHON)
-	# No way to set py35, remove for now.
-	# find_package(PythonLibs)
+  # No way to set py35, remove for now.
+  # find_package(PythonLibs)
 
-	# Use our own instead, since without py is such a rare case,
-	# require this package
-	# XXX Linking errors with debian static python :/
-#		find_package_wrapper(PythonLibsUnix REQUIRED)
-	find_package(PythonLibsUnix REQUIRED)
+  # Use our own instead, since without py is such a rare case,
+  # require this package
+  # XXX Linking errors with debian static python :/
+#       find_package_wrapper(PythonLibsUnix REQUIRED)
+  find_package(PythonLibsUnix REQUIRED)
 endif()
 
 if(WITH_IMAGE_OPENEXR)
-	find_package_wrapper(OpenEXR)  # our own module
-	if(NOT OPENEXR_FOUND)
-		set(WITH_IMAGE_OPENEXR OFF)
-	endif()
+  find_package_wrapper(OpenEXR)  # our own module
+  if(NOT OPENEXR_FOUND)
+    set(WITH_IMAGE_OPENEXR OFF)
+  endif()
 endif()
 
 if(WITH_IMAGE_OPENJPEG)
-	find_package_wrapper(OpenJPEG)
-	if(NOT OPENJPEG_FOUND)
-		set(WITH_IMAGE_OPENJPEG OFF)
-	endif()
+  find_package_wrapper(OpenJPEG)
+  if(NOT OPENJPEG_FOUND)
+    set(WITH_IMAGE_OPENJPEG OFF)
+  endif()
 endif()
 
 if(WITH_IMAGE_TIFF)
-	# XXX Linking errors with debian static tiff :/
-#		find_package_wrapper(TIFF)
-	find_package(TIFF)
-	if(NOT TIFF_FOUND)
-		set(WITH_IMAGE_TIFF OFF)
-	endif()
+  # XXX Linking errors with debian static tiff :/
+#       find_package_wrapper(TIFF)
+  find_package(TIFF)
+  if(NOT TIFF_FOUND)
+    set(WITH_IMAGE_TIFF OFF)
+  endif()
 endif()
 
 # Audio IO
 if(WITH_SYSTEM_AUDASPACE)
-	find_package_wrapper(Audaspace)
-	if(NOT AUDASPACE_FOUND OR NOT AUDASPACE_C_FOUND)
-		message(FATAL_ERROR "Audaspace external library not found!")
-	endif()
+  find_package_wrapper(Audaspace)
+  if(NOT AUDASPACE_FOUND OR NOT AUDASPACE_C_FOUND)
+    message(FATAL_ERROR "Audaspace external library not found!")
+  endif()
 endif()
 
 if(WITH_OPENAL)
-	find_package_wrapper(OpenAL)
-	if(NOT OPENAL_FOUND)
-		set(WITH_OPENAL OFF)
-	endif()
+  find_package_wrapper(OpenAL)
+  if(NOT OPENAL_FOUND)
+    set(WITH_OPENAL OFF)
+  endif()
 endif()
 
 if(WITH_SDL)
-	if(WITH_SDL_DYNLOAD)
-		set(SDL_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/extern/sdlew/include/SDL2")
-		set(SDL_LIBRARY)
-	else()
-		find_package_wrapper(SDL2)
-		if(SDL2_FOUND)
-			# Use same names for both versions of SDL until we move to 2.x.
-			set(SDL_INCLUDE_DIR "${SDL2_INCLUDE_DIR}")
-			set(SDL_LIBRARY "${SDL2_LIBRARY}")
-			set(SDL_FOUND "${SDL2_FOUND}")
-		else()
-			find_package_wrapper(SDL)
-		endif()
-		mark_as_advanced(
-			SDL_INCLUDE_DIR
-			SDL_LIBRARY
-		)
-		# unset(SDLMAIN_LIBRARY CACHE)
-		if(NOT SDL_FOUND)
-			set(WITH_SDL OFF)
-		endif()
-	endif()
+  if(WITH_SDL_DYNLOAD)
+    set(SDL_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/extern/sdlew/include/SDL2")
+    set(SDL_LIBRARY)
+  else()
+    find_package_wrapper(SDL2)
+    if(SDL2_FOUND)
+      # Use same names for both versions of SDL until we move to 2.x.
+      set(SDL_INCLUDE_DIR "${SDL2_INCLUDE_DIR}")
+      set(SDL_LIBRARY "${SDL2_LIBRARY}")
+      set(SDL_FOUND "${SDL2_FOUND}")
+    else()
+      find_package_wrapper(SDL)
+    endif()
+    mark_as_advanced(
+      SDL_INCLUDE_DIR
+      SDL_LIBRARY
+    )
+    # unset(SDLMAIN_LIBRARY CACHE)
+    if(NOT SDL_FOUND)
+      set(WITH_SDL OFF)
+    endif()
+  endif()
 endif()
 
 if(WITH_JACK)
-	find_package_wrapper(Jack)
-	if(NOT JACK_FOUND)
-		set(WITH_JACK OFF)
-	endif()
+  find_package_wrapper(Jack)
+  if(NOT JACK_FOUND)
+    set(WITH_JACK OFF)
+  endif()
 endif()
 
 # Codecs
 if(WITH_CODEC_SNDFILE)
-	find_package_wrapper(SndFile)
-	if(NOT LIBSNDFILE_FOUND)
-		set(WITH_CODEC_SNDFILE OFF)
-	endif()
+  find_package_wrapper(SndFile)
+  if(NOT LIBSNDFILE_FOUND)
+    set(WITH_CODEC_SNDFILE OFF)
+  endif()
 endif()
 
 if(WITH_CODEC_FFMPEG)
-	if(EXISTS ${LIBDIR})
-		# For precompiled lib directory, all ffmpeg dependencies are in the same folder
-		file(GLOB ffmpeg_libs ${LIBDIR}/ffmpeg/lib/*.a ${LIBDIR}/sndfile/lib/*.a)
-		set(FFMPEG ${LIBDIR}/ffmpeg CACHE PATH "FFMPEG Directory")
-		set(FFMPEG_LIBRARIES ${ffmpeg_libs} ${ffmpeg_libs} CACHE STRING "FFMPEG Libraries")
-	else()
-		set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
-		set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
-	endif()
+  if(EXISTS ${LIBDIR})
+    # For precompiled lib directory, all ffmpeg dependencies are in the same folder
+    file(GLOB ffmpeg_libs ${LIBDIR}/ffmpeg/lib/*.a ${LIBDIR}/sndfile/lib/*.a)
+    set(FFMPEG ${LIBDIR}/ffmpeg CACHE PATH "FFMPEG Directory")
+    set(FFMPEG_LIBRARIES ${ffmpeg_libs} ${ffmpeg_libs} CACHE STRING "FFMPEG Libraries")
+  else()
+    set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
+    set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
+  endif()
 
-	mark_as_advanced(FFMPEG)
+  mark_as_advanced(FFMPEG)
 
-	# lame, but until we have proper find module for ffmpeg
-	set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
-	if(EXISTS "${FFMPEG}/include/ffmpeg/")
-		list(APPEND FFMPEG_INCLUDE_DIRS "${FFMPEG}/include/ffmpeg")
-	endif()
-	# end lameness
+  # lame, but until we have proper find module for ffmpeg
+  set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
+  if(EXISTS "${FFMPEG}/include/ffmpeg/")
+    list(APPEND FFMPEG_INCLUDE_DIRS "${FFMPEG}/include/ffmpeg")
+  endif()
+  # end lameness
 
-	mark_as_advanced(FFMPEG_LIBRARIES)
-	set(FFMPEG_LIBPATH ${FFMPEG}/lib)
+  mark_as_advanced(FFMPEG_LIBRARIES)
+  set(FFMPEG_LIBPATH ${FFMPEG}/lib)
 endif()
 
 if(WITH_FFTW3)
-	find_package_wrapper(Fftw3)
-	if(NOT FFTW3_FOUND)
-		set(WITH_FFTW3 OFF)
-	endif()
+  find_package_wrapper(Fftw3)
+  if(NOT FFTW3_FOUND)
+    set(WITH_FFTW3 OFF)
+  endif()
 endif()
 
 if(WITH_OPENCOLLADA)
-	find_package_wrapper(OpenCOLLADA)
-	if(OPENCOLLADA_FOUND)
-		find_package_wrapper(XML2)
-		find_package_wrapper(PCRE)
-	else()
-		set(WITH_OPENCOLLADA OFF)
-	endif()
+  find_package_wrapper(OpenCOLLADA)
+  if(OPENCOLLADA_FOUND)
+    find_package_wrapper(XML2)
+    find_package_wrapper(PCRE)
+  else()
+    set(WITH_OPENCOLLADA OFF)
+  endif()
 endif()
 
 if(WITH_MEM_JEMALLOC)
-	find_package_wrapper(JeMalloc)
-	if(NOT JEMALLOC_FOUND)
-		set(WITH_MEM_JEMALLOC OFF)
-	endif()
+  find_package_wrapper(JeMalloc)
+  if(NOT JEMALLOC_FOUND)
+    set(WITH_MEM_JEMALLOC OFF)
+  endif()
 endif()
 
 if(WITH_INPUT_NDOF)
-	find_package_wrapper(Spacenav)
-	if(SPACENAV_FOUND)
-		# use generic names within blenders buildsystem.
-		set(NDOF_INCLUDE_DIRS ${SPACENAV_INCLUDE_DIRS})
-		set(NDOF_LIBRARIES ${SPACENAV_LIBRARIES})
-	else()
-		set(WITH_INPUT_NDOF OFF)
-	endif()
+  find_package_wrapper(Spacenav)
+  if(SPACENAV_FOUND)
+    # use generic names within blenders buildsystem.
+    set(NDOF_INCLUDE_DIRS ${SPACENAV_INCLUDE_DIRS})
+    set(NDOF_LIBRARIES ${SPACENAV_LIBRARIES})
+  else()
+    set(WITH_INPUT_NDOF OFF)
+  endif()
 endif()
 
 if(WITH_CYCLES_OSL)
-	set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
-	if(NOT OSL_ROOT)
-		set(OSL_ROOT ${CYCLES_OSL})
-	endif()
-	find_package_wrapper(OpenShadingLanguage)
-	if(OSL_FOUND)
-		if(${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6")
-			# Note: --whole-archive is needed to force loading of all symbols in liboslexec,
-			# otherwise LLVM is missing the osl_allocate_closure_component function
-			set(OSL_LIBRARIES
-				${OSL_OSLCOMP_LIBRARY}
-				-Wl,--whole-archive ${OSL_OSLEXEC_LIBRARY}
-				-Wl,--no-whole-archive ${OSL_OSLQUERY_LIBRARY}
-			)
-		endif()
-	else()
-		message(STATUS "OSL not found, disabling it from Cycles")
-		set(WITH_CYCLES_OSL OFF)
-	endif()
+  set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
+  if(NOT OSL_ROOT)
+    set(OSL_ROOT ${CYCLES_OSL})
+  endif()
+  find_package_wrapper(OpenShadingLanguage)
+  if(OSL_FOUND)
+    if(${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6")
+      # Note: --whole-archive is needed to force loading of all symbols in liboslexec,
+      # otherwise LLVM is missing the osl_allocate_closure_component function
+      set(OSL_LIBRARIES
+        ${OSL_OSLCOMP_LIBRARY}
+        -Wl,--whole-archive ${OSL_OSLEXEC_LIBRARY}
+        -Wl,--no-whole-archive ${OSL_OSLQUERY_LIBRARY}
+      )
+    endif()
+  else()
+    message(STATUS "OSL not found, disabling it from Cycles")
+    set(WITH_CYCLES_OSL OFF)
+  endif()
 endif()
 
 if(WITH_OPENVDB)
-	find_package_wrapper(OpenVDB)
-	find_package_wrapper(TBB)
-	find_package_wrapper(Blosc)
-	if(NOT TBB_FOUND)
-		set(WITH_OPENVDB OFF)
-		set(WITH_OPENVDB_BLOSC OFF)
-		message(STATUS "TBB not found, disabling OpenVDB")
-	elseif(NOT OPENVDB_FOUND)
-		set(WITH_OPENVDB OFF)
-		set(WITH_OPENVDB_BLOSC OFF)
-		message(STATUS "OpenVDB not found, disabling it")
-	elseif(NOT BLOSC_FOUND)
-		set(WITH_OPENVDB_BLOSC OFF)
-		message(STATUS "Blosc not found, disabling it for OpenVBD")
-	endif()
+  find_package_wrapper(OpenVDB)
+  find_package_wrapper(TBB)
+  find_package_wrapper(Blosc)
+  if(NOT TBB_FOUND)
+    set(WITH_OPENVDB OFF)
+    set(WITH_OPENVDB_BLOSC OFF)
+    message(STATUS "TBB not found, disabling OpenVDB")
+  elseif(NOT OPENVDB_FOUND)
+    set(WITH_OPENVDB OFF)
+    set(WITH_OPENVDB_BLOSC OFF)
+    message(STATUS "OpenVDB not found, disabling it")
+  elseif(NOT BLOSC_FOUND)
+    set(WITH_OPENVDB_BLOSC OFF)
+    message(STATUS "Blosc not found, disabling it for OpenVBD")
+  endif()
 endif()
 
 if(WITH_ALEMBIC)
-	find_package_wrapper(Alembic)
+  find_package_wrapper(Alembic)
 
-	if(WITH_ALEMBIC_HDF5)
-		set(HDF5_ROOT_DIR ${LIBDIR}/hdf5)
-		find_package_wrapper(HDF5)
-	endif()
+  if(WITH_ALEMBIC_HDF5)
+    set(HDF5_ROOT_DIR ${LIBDIR}/hdf5)
+    find_package_wrapper(HDF5)
+  endif()
 
-	if(NOT ALEMBIC_FOUND OR (WITH_ALEMBIC_HDF5 AND NOT HDF5_FOUND))
-		set(WITH_ALEMBIC OFF)
-		set(WITH_ALEMBIC_HDF5 OFF)
-	endif()
+  if(NOT ALEMBIC_FOUND OR (WITH_ALEMBIC_HDF5 AND NOT HDF5_FOUND))
+    set(WITH_ALEMBIC OFF)
+    set(WITH_ALEMBIC_HDF5 OFF)
+  endif()
 endif()
 
 if(WITH_BOOST)
-	# uses in build instructions to override include and library variables
-	if(NOT BOOST_CUSTOM)
-		if(WITH_STATIC_LIBS)
-			set(Boost_USE_STATIC_LIBS ON)
-		endif()
-		set(Boost_USE_MULTITHREADED ON)
-		set(__boost_packages filesystem regex thread date_time)
-		if(WITH_CYCLES_OSL)
-			if(NOT (${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6"))
-				list(APPEND __boost_packages wave)
-			else()
-			endif()
-		endif()
-		if(WITH_INTERNATIONAL)
-			list(APPEND __boost_packages locale)
-		endif()
-		if(WITH_CYCLES_NETWORK)
-			list(APPEND __boost_packages serialization)
-		endif()
-		if(WITH_OPENVDB)
-			list(APPEND __boost_packages iostreams)
-		endif()
-		list(APPEND __boost_packages system)
-		find_package(Boost 1.48 COMPONENTS ${__boost_packages})
-		if(NOT Boost_FOUND)
-			# try to find non-multithreaded if -mt not found, this flag
-			# doesn't matter for us, it has nothing to do with thread
-			# safety, but keep it to not disturb build setups
-			set(Boost_USE_MULTITHREADED OFF)
-			find_package(Boost 1.48 COMPONENTS ${__boost_packages})
-		endif()
-		unset(__boost_packages)
-		if(Boost_USE_STATIC_LIBS AND WITH_BOOST_ICU)
-			find_package(IcuLinux)
-		endif()
-		mark_as_advanced(Boost_DIR)  # why doesn't boost do this?
-	endif()
-
-	set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
-	set(BOOST_LIBRARIES ${Boost_LIBRARIES})
-	set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
-	set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
+  # uses in build instructions to override include and library variables
+  if(NOT BOOST_CUSTOM)
+    if(WITH_STATIC_LIBS)
+      set(Boost_USE_STATIC_LIBS ON)
+    endif()
+    set(Boost_USE_MULTITHREADED ON)
+    set(__boost_packages filesystem regex thread date_time)
+    if(WITH_CYCLES_OSL)
+      if(NOT (${OSL_LIBRARY_VERSION_MAJOR} EQUAL "1" AND ${OSL_LIBRARY_VERSION_MINOR} LESS "6"))
+        list(APPEND __boost_packages wave)
+      else()
+      endif()
+    endif()
+    if(WITH_INTERNATIONAL)
+      list(APPEND __boost_packages locale)
+    endif()
+    if(WITH_CYCLES_NETWORK)
+      list(APPEND __boost_packages serialization)
+    endif()
+    if(WITH_OPENVDB)
+      list(APPEND __boost_packages iostreams)
+    endif()
+    list(APPEND __boost_packages system)
+    find_package(Boost 1.48 COMPONENTS ${__boost_packages})
+    if(NOT Boost_FOUND)
+      # try to find non-multithreaded if -mt not found, this flag
+      # doesn't matter for us, it has nothing to do with thread
+      # safety, but keep it to not disturb build setups
+      set(Boost_USE_MULTITHREADED OFF)
+      find_package(Boost 1.48 COMPONENTS ${__boost_packages})
+    endif()
+    unset(__boost_packages)
+    if(Boost_USE_STATIC_LIBS AND WITH_BOOST_ICU)
+      find_package(IcuLinux)
+    endif()
+    mark_as_advanced(Boost_DIR)  # why doesn't boost do this?
+  endif()
+
+  set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
+  set(BOOST_LIBRARIES ${Boost_LIBRARIES})
+  set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
+  set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
 endif()
 
 if(WITH_OPENIMAGEIO)
-	find_package_wrapper(OpenImageIO)
-	if(NOT OPENIMAGEIO_PUGIXML_FOUND AND WITH_CYCLES_STANDALONE)
-		find_package_wrapper(PugiXML)
-	else()
-		set(PUGIXML_INCLUDE_DIR "${OPENIMAGEIO_INCLUDE_DIR/OpenImageIO}")
-		set(PUGIXML_LIBRARIES "")
-	endif()
-
-	set(OPENIMAGEIO_LIBRARIES
-		${OPENIMAGEIO_LIBRARIES}
-		${PNG_LIBRARIES}
-		${JPEG_LIBRARIES}
-		${ZLIB_LIBRARIES}
-		${BOOST_LIBRARIES}
-	)
-	set(OPENIMAGEIO_LIBPATH)  # TODO, remove and reference the absolute path everywhere
-	set(OPENIMAGEIO_DEFINITIONS "")
-
-	if(WITH_IMAGE_TIFF)
-		list(APPEND OPENIMAGEIO_LIBRARIES "${TIFF_LIBRARY}")
-	endif()
-	if(WITH_IMAGE_OPENEXR)
-		list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
-	endif()
-
-	if(NOT OPENIMAGEIO_FOUND)
-		set(WITH_OPENIMAGEIO OFF)
-		message(STATUS "OpenImageIO not found, disabling WITH_CYCLES")
-	endif()
+  find_package_wrapper(OpenImageIO)
+  if(NOT OPENIMAGEIO_PUGIXML_FOUND AND WITH_CYCLES_STANDALONE)
+    find_package_wrapper(PugiXML)
+  else()
+    set(PUGIXML_INCLUDE_DIR "${OPENIMAGEIO_INCLUDE_DIR/OpenImageIO}")
+    set(PUGIXML_LIBRARIES "")
+  endif()
+
+  set(OPENIMAGEIO_LIBRARIES
+    ${OPENIMAGEIO_LIBRARIES}
+    ${PNG_LIBRARIES}
+    ${JPEG_LIBRARIES}
+    ${ZLIB_LIBRARIES}
+    ${BOOST_LIBRARIES}
+  )
+  set(OPENIMAGEIO_LIBPATH)  # TODO, remove and reference the absolute path everywhere
+  set(OPENIMAGEIO_DEFINITIONS "")
+
+  if(WITH_IMAGE_TIFF)
+    list(APPEND OPENIMAGEIO_LIBRARIES "${TIFF_LIBRARY}")
+  endif()
+  if(WITH_IMAGE_OPENEXR)
+    list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
+  endif()
+
+  if(NOT OPENIMAGEIO_FOUND)
+    set(WITH_OPENIMAGEIO OFF)
+    message(STATUS "OpenImageIO not found, disabling WITH_CYCLES")
+  endif()
 endif()
 
 if(WITH_OPENCOLORIO)
-	find_package_wrapper(OpenColorIO)
+  find_package_wrapper(OpenColorIO)
 
-	set(OPENCOLORIO_LIBRARIES ${OPENCOLORIO_LIBRARIES})
-	set(OPENCOLORIO_LIBPATH)  # TODO, remove and reference the absolute path everywhere
-	set(OPENCOLORIO_DEFINITIONS)
+  set(OPENCOLORIO_LIBRARIES ${OPENCOLORIO_LIBRARIES})
+  set(OPENCOLORIO_LIBPATH)  # TODO, remove and reference the absolute path everywhere
+  set(OPENCOLORIO_DEFINITIONS)
 
-	if(NOT OPENCOLORIO_FOUND)
-		set(WITH_OPENCOLORIO OFF)
-		message(STATUS "OpenColorIO not found")
-	endif()
+  if(NOT OPENCOLORIO_FOUND)
+    set(WITH_OPENCOLORIO OFF)
+    message(STATUS "OpenColorIO not found")
+  endif()
 endif()
 
 if(WITH_CYCLES_EMBREE)
-	find_package(Embree 3.2.4 REQUIRED)
+  find_package(Embree 3.2.4 REQUIRED)
 endif()
 
 if(WITH_LLVM)
-	if(EXISTS ${LIBDIR})
-		set(LLVM_STATIC ON)
-	endif()
+  if(EXISTS ${LIBDIR})
+    set(LLVM_STATIC ON)
+  endif()
 
-	find_package_wrapper(LLVM)
+  find_package_wrapper(LLVM)
 
-	# Symbol conflicts with same UTF library used by OpenCollada
-	if(EXISTS ${LIBDIR})
-		if(WITH_OPENCOLLADA AND (${LLVM_VERSION} VERSION_LESS "4.0.0"))
-			list(REMOVE_ITEM OPENCOLLADA_LIBRARIES ${OPENCOLLADA_UTF_LIBRARY})
-		endif()
-	endif()
+  # Symbol conflicts with same UTF library used by OpenCollada
+  if(EXISTS ${LIBDIR})
+    if(WITH_OPENCOLLADA AND (${LLVM_VERSION} VERSION_LESS "4.0.0"))
+      list(REMOVE_ITEM OPENCOLLADA_LIBRARIES ${OPENCOLLADA_UTF_LIBRARY})
+    endif()
+  endif()
 
-	if(NOT LLVM_FOUND)
-		set(WITH_LLVM OFF)
-		message(STATUS "LLVM not found")
-	endif()
+  if(NOT LLVM_FOUND)
+    set(WITH_LLVM OFF)
+    message(STATUS "LLVM not found")
+  endif()
 endif()
 
 if(WITH_LLVM OR WITH_SDL_DYNLOAD)
-	# Fix for conflict with Mesa llvmpipe
-	set(PLATFORM_LINKFLAGS
-		"${PLATFORM_LINKFLAGS} -Wl,--version-script='${CMAKE_SOURCE_DIR}/source/creator/blender.map'"
-	)
+  # Fix for conflict with Mesa llvmpipe
+  set(PLATFORM_LINKFLAGS
+    "${PLATFORM_LINKFLAGS} -Wl,--version-script='${CMAKE_SOURCE_DIR}/source/creator/blender.map'"
+  )
 endif()
 
 if(WITH_OPENSUBDIV)
-	find_package_wrapper(OpenSubdiv)
+  find_package_wrapper(OpenSubdiv)
 
-	set(OPENSUBDIV_LIBRARIES ${OPENSUBDIV_LIBRARIES})
-	set(OPENSUBDIV_LIBPATH)  # TODO, remove and reference the absolute path everywhere
+  set(OPENSUBDIV_LIBRARIES ${OPENSUBDIV_LIBRARIES})
+  set(OPENSUBDIV_LIBPATH)  # TODO, remove and reference the absolute path everywhere
 
-	if(NOT OPENSUBDIV_FOUND)
-		set(WITH_OPENSUBDIV OFF)
-		message(STATUS "OpenSubdiv not found")
-	endif()
+  if(NOT OPENSUBDIV_FOUND)
+    set(WITH_OPENSUBDIV OFF)
+    message(STATUS "OpenSubdiv not found")
+  endif()
 endif()
 
 # OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
 if(HAIKU)
-	list(APPEND PLATFORM_LINKLIBS -lnetwork)
+  list(APPEND PLATFORM_LINKLIBS -lnetwork)
 else()
-	list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
+  list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
 endif()
 
 find_package(Threads REQUIRED)
@@ -420,15 +420,15 @@ list(APPEND PLATFORM_LINKLIBS ${CMAKE_THREAD_LIBS_INIT})
 set(PTHREADS_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
 
 if(CMAKE_DL_LIBS)
-	list(APPEND PLATFORM_LINKLIBS ${CMAKE_DL_LIBS})
+  list(APPEND PLATFORM_LINKLIBS ${CMAKE_DL_LIBS})
 endif()
 
 if(CMAKE_SYSTEM_NAME MATCHES "Linux")
-	if(NOT WITH_PYTHON_MODULE)
-		# binreloc is linux only
-		set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
-		set(WITH_BINRELOC ON)
-	endif()
+  if(NOT WITH_PYTHON_MODULE)
+    # binreloc is linux only
+    set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
+    set(WITH_BINRELOC ON)
+  endif()
 endif()
 
 # lfs on glibc, all compilers should use
@@ -436,43 +436,43 @@ add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
 
 # GNU Compiler
 if(CMAKE_COMPILER_IS_GNUCC)
-	set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
-
-	if(WITH_LINKER_GOLD)
-		execute_process(
-			COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version
-			ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
-		if("${LD_VERSION}" MATCHES "GNU gold")
-			set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fuse-ld=gold")
-			set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fuse-ld=gold")
-		else()
-			message(STATUS "GNU gold linker isn't available, using the default system linker.")
-		endif()
-		unset(LD_VERSION)
-	endif()
+  set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
+
+  if(WITH_LINKER_GOLD)
+    execute_process(
+      COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version
+      ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
+    if("${LD_VERSION}" MATCHES "GNU gold")
+      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fuse-ld=gold")
+      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fuse-ld=gold")
+    else()
+      message(STATUS "GNU gold linker isn't available, using the default system linker.")
+    endif()
+    unset(LD_VERSION)
+  endif()
 
 # CLang is the same as GCC for now.
 elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
-	set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
+  set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
 # Intel C++ Compiler
 elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
-	# think these next two are broken
-	find_program(XIAR xiar)
-	if(XIAR)
-		set(CMAKE_AR "${XIAR}")
-	endif()
-	mark_as_advanced(XIAR)
-
-	find_program(XILD xild)
-	if(XILD)
-		set(CMAKE_LINKER "${XILD}")
-	endif()
-	mark_as_advanced(XILD)
-
-	set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fp-model precise -prec_div -parallel")
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fp-model precise -prec_div -parallel")
-
-	# set(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -diag-enable sc3")
-	set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
-	set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -static-intel")
+  # think these next two are broken
+  find_program(XIAR xiar)
+  if(XIAR)
+    set(CMAKE_AR "${XIAR}")
+  endif()
+  mark_as_advanced(XIAR)
+
+  find_program(XILD xild)
+  if(XILD)
+    set(CMAKE_LINKER "${XILD}")
+  endif()
+  mark_as_advanced(XILD)
+
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fp-model precise -prec_div -parallel")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fp-model precise -prec_div -parallel")
+
+  # set(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -diag-enable sc3")
+  set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
+  set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -static-intel")
 endif()
diff --git a/build_files/cmake/platform/platform_win32.cmake b/build_files/cmake/platform/platform_win32.cmake
index 827357df043b01c6d4d35cfbcd533f5ffbef8cea..7b516d87f38d9b298a3ac0ba252abaecbca5edb1 100644
--- a/build_files/cmake/platform/platform_win32.cmake
+++ b/build_files/cmake/platform/platform_win32.cmake
@@ -23,44 +23,44 @@
 add_definitions(-DWIN32)
 
 if(NOT MSVC)
-	message(FATAL_ERROR "Compiler is unsupported")
+  message(FATAL_ERROR "Compiler is unsupported")
 endif()
 
 if(CMAKE_C_COMPILER_ID MATCHES "Clang")
-	set(MSVC_CLANG On)
-	set(VC_TOOLS_DIR $ENV{VCToolsRedistDir} CACHE STRING "Location of the msvc redistributables")
-	set(MSVC_REDIST_DIR ${VC_TOOLS_DIR})
-	if (DEFINED MSVC_REDIST_DIR)
-		file(TO_CMAKE_PATH ${MSVC_REDIST_DIR} MSVC_REDIST_DIR)
-	else()
-		message("Unable to detect the Visual Studio redist directory, copying of the runtime dlls will not work, try running from the visual studio developer prompt.")
-	endif()
+  set(MSVC_CLANG On)
+  set(VC_TOOLS_DIR $ENV{VCToolsRedistDir} CACHE STRING "Location of the msvc redistributables")
+  set(MSVC_REDIST_DIR ${VC_TOOLS_DIR})
+  if (DEFINED MSVC_REDIST_DIR)
+    file(TO_CMAKE_PATH ${MSVC_REDIST_DIR} MSVC_REDIST_DIR)
+  else()
+    message("Unable to detect the Visual Studio redist directory, copying of the runtime dlls will not work, try running from the visual studio developer prompt.")
+  endif()
 endif()
 
 set_property(GLOBAL PROPERTY USE_FOLDERS ${WINDOWS_USE_VISUAL_STUDIO_FOLDERS})
 
 if(NOT WITH_PYTHON_MODULE)
-	set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT blender)
+  set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT blender)
 endif()
 
 macro(warn_hardcoded_paths package_name
-	)
-	if(WITH_WINDOWS_FIND_MODULES)
-		message(WARNING "Using HARDCODED ${package_name} locations")
-	endif()
+  )
+  if(WITH_WINDOWS_FIND_MODULES)
+    message(WARNING "Using HARDCODED ${package_name} locations")
+  endif()
 endmacro()
 
 macro(windows_find_package package_name
-	)
-	if(WITH_WINDOWS_FIND_MODULES)
-		find_package(${package_name})
-	endif()
+  )
+  if(WITH_WINDOWS_FIND_MODULES)
+    find_package(${package_name})
+  endif()
 endmacro()
 
 macro(find_package_wrapper)
-	if(WITH_WINDOWS_FIND_MODULES)
-		find_package(${ARGV})
-	endif()
+  if(WITH_WINDOWS_FIND_MODULES)
+    find_package(${ARGV})
+  endif()
 endmacro()
 
 add_definitions(-DWIN32)
@@ -71,22 +71,22 @@ add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
 
 # Minimum MSVC Version
 if(CMAKE_CXX_COMPILER_ID MATCHES MSVC)
-	if(MSVC_VERSION EQUAL 1800)
-		set(_min_ver "18.0.31101")
-		if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
-			message(FATAL_ERROR
-				"Visual Studio 2013 (Update 4, ${_min_ver}) required, "
-				"found (${CMAKE_CXX_COMPILER_VERSION})")
-		endif()
-	endif()
-	if(MSVC_VERSION EQUAL 1900)
-		set(_min_ver "19.0.24210")
-		if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
-			message(FATAL_ERROR
-				"Visual Studio 2015 (Update 3, ${_min_ver}) required, "
-				"found (${CMAKE_CXX_COMPILER_VERSION})")
-		endif()
-	endif()
+  if(MSVC_VERSION EQUAL 1800)
+    set(_min_ver "18.0.31101")
+    if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
+      message(FATAL_ERROR
+        "Visual Studio 2013 (Update 4, ${_min_ver}) required, "
+        "found (${CMAKE_CXX_COMPILER_VERSION})")
+    endif()
+  endif()
+  if(MSVC_VERSION EQUAL 1900)
+    set(_min_ver "19.0.24210")
+    if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${_min_ver})
+      message(FATAL_ERROR
+        "Visual Studio 2015 (Update 3, ${_min_ver}) required, "
+        "found (${CMAKE_CXX_COMPILER_VERSION})")
+    endif()
+  endif()
 endif()
 unset(_min_ver)
 
@@ -96,20 +96,20 @@ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /SAFESEH:NO")
 set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /SAFESEH:NO")
 
 list(APPEND PLATFORM_LINKLIBS
-	ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32
-	advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp
+  ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32
+  advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp
 )
 
 if(WITH_INPUT_IME)
-	list(APPEND PLATFORM_LINKLIBS imm32)
+  list(APPEND PLATFORM_LINKLIBS imm32)
 endif()
 
 add_definitions(
-	-D_CRT_NONSTDC_NO_DEPRECATE
-	-D_CRT_SECURE_NO_DEPRECATE
-	-D_SCL_SECURE_NO_DEPRECATE
-	-D_CONSOLE
-	-D_LIB
+  -D_CRT_NONSTDC_NO_DEPRECATE
+  -D_CRT_SECURE_NO_DEPRECATE
+  -D_SCL_SECURE_NO_DEPRECATE
+  -D_CONSOLE
+  -D_LIB
 )
 
 # MSVC11 needs _ALLOW_KEYWORD_MACROS to build
@@ -128,11 +128,11 @@ include(InstallRequiredSystemLibraries)
 remove_cc_flag("/MDd" "/MD")
 
 if(MSVC_CLANG) # Clangs version of cl doesn't support all flags
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARN_FLAGS} /nologo /J /Gd /EHsc -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference ")
-	set(CMAKE_C_FLAGS     "${CMAKE_C_FLAGS} /nologo /J /Gd -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARN_FLAGS} /nologo /J /Gd /EHsc -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference ")
+  set(CMAKE_C_FLAGS     "${CMAKE_C_FLAGS} /nologo /J /Gd -Wno-unused-command-line-argument -Wno-microsoft-enum-forward-reference")
 else()
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /nologo /J /Gd /MP /EHsc")
-	set(CMAKE_C_FLAGS     "${CMAKE_C_FLAGS} /nologo /J /Gd /MP")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /nologo /J /Gd /MP /EHsc")
+  set(CMAKE_C_FLAGS     "${CMAKE_C_FLAGS} /nologo /J /Gd /MP")
 endif()
 
 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
@@ -152,50 +152,50 @@ set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /ignore:4049 /ignore:4217 /ignore:
 set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /ignore:4221")
 
 if(CMAKE_CL_64)
-	set(PLATFORM_LINKFLAGS "/MACHINE:X64 ${PLATFORM_LINKFLAGS}")
+  set(PLATFORM_LINKFLAGS "/MACHINE:X64 ${PLATFORM_LINKFLAGS}")
 else()
-	set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
+  set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
 endif()
 
 set(PLATFORM_LINKFLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG} /IGNORE:4099 /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libc.lib")
 
 if(NOT DEFINED LIBDIR)
 
-	# Setup 64bit and 64bit windows systems
-	if(CMAKE_CL_64)
-		message(STATUS "64 bit compiler detected.")
-		set(LIBDIR_BASE "win64")
-	else()
-		message(STATUS "32 bit compiler detected.")
-		set(LIBDIR_BASE "windows")
-	endif()
-	# Can be 1910..1912
-	if(MSVC_VERSION GREATER 1919)
-		message(STATUS "Visual Studio 2019 detected.")
-		set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
-	elseif(MSVC_VERSION GREATER 1909)
-		message(STATUS "Visual Studio 2017 detected.")
-		set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
-	elseif(MSVC_VERSION EQUAL 1900)
-		message(STATUS "Visual Studio 2015 detected.")
-		set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
-	else()
-		message(STATUS "Visual Studio 2013 detected.")
-		set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc12)
-	endif()
+  # Setup 64bit and 64bit windows systems
+  if(CMAKE_CL_64)
+    message(STATUS "64 bit compiler detected.")
+    set(LIBDIR_BASE "win64")
+  else()
+    message(STATUS "32 bit compiler detected.")
+    set(LIBDIR_BASE "windows")
+  endif()
+  # Can be 1910..1912
+  if(MSVC_VERSION GREATER 1919)
+    message(STATUS "Visual Studio 2019 detected.")
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
+  elseif(MSVC_VERSION GREATER 1909)
+    message(STATUS "Visual Studio 2017 detected.")
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
+  elseif(MSVC_VERSION EQUAL 1900)
+    message(STATUS "Visual Studio 2015 detected.")
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
+  else()
+    message(STATUS "Visual Studio 2013 detected.")
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc12)
+  endif()
 else()
-	message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
+  message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
 endif()
 if(NOT EXISTS "${LIBDIR}/")
-	message(FATAL_ERROR "Windows requires pre-compiled libs at: '${LIBDIR}'")
+  message(FATAL_ERROR "Windows requires pre-compiled libs at: '${LIBDIR}'")
 endif()
 
 # Add each of our libraries to our cmake_prefix_path so find_package() could work
 file(GLOB children RELATIVE ${LIBDIR} ${LIBDIR}/*)
 foreach(child ${children})
-	if(IS_DIRECTORY ${LIBDIR}/${child})
-		list(APPEND CMAKE_PREFIX_PATH  ${LIBDIR}/${child})
-	endif()
+  if(IS_DIRECTORY ${LIBDIR}/${child})
+    list(APPEND CMAKE_PREFIX_PATH  ${LIBDIR}/${child})
+  endif()
 endforeach()
 
 set(ZLIB_INCLUDE_DIRS ${LIBDIR}/zlib/include)
@@ -208,20 +208,20 @@ windows_find_package(zlib) # we want to find before finding things that depend o
 windows_find_package(png)
 
 if(NOT PNG_FOUND)
-	warn_hardcoded_paths(libpng)
-	set(PNG_PNG_INCLUDE_DIR ${LIBDIR}/png/include)
-	set(PNG_LIBRARIES ${LIBDIR}/png/lib/libpng.lib)
-	set(PNG "${LIBDIR}/png")
-	set(PNG_INCLUDE_DIRS "${PNG}/include")
-	set(PNG_LIBPATH ${PNG}/lib) # not cmake defined
+  warn_hardcoded_paths(libpng)
+  set(PNG_PNG_INCLUDE_DIR ${LIBDIR}/png/include)
+  set(PNG_LIBRARIES ${LIBDIR}/png/lib/libpng.lib)
+  set(PNG "${LIBDIR}/png")
+  set(PNG_INCLUDE_DIRS "${PNG}/include")
+  set(PNG_LIBPATH ${PNG}/lib) # not cmake defined
 endif()
 
 set(JPEG_NAMES ${JPEG_NAMES} libjpeg)
 windows_find_package(jpeg REQUIRED)
 if(NOT JPEG_FOUND)
-	warn_hardcoded_paths(jpeg)
-	set(JPEG_INCLUDE_DIR ${LIBDIR}/jpeg/include)
-	set(JPEG_LIBRARIES ${LIBDIR}/jpeg/lib/libjpeg.lib)
+  warn_hardcoded_paths(jpeg)
+  set(JPEG_INCLUDE_DIR ${LIBDIR}/jpeg/include)
+  set(JPEG_LIBRARIES ${LIBDIR}/jpeg/lib/libjpeg.lib)
 endif()
 
 set(PTHREADS_INCLUDE_DIRS ${LIBDIR}/pthreads/include)
@@ -229,313 +229,313 @@ set(PTHREADS_LIBRARIES ${LIBDIR}/pthreads/lib/pthreadVC3.lib)
 
 set(FREETYPE ${LIBDIR}/freetype)
 set(FREETYPE_INCLUDE_DIRS
-	${LIBDIR}/freetype/include
-	${LIBDIR}/freetype/include/freetype2
+  ${LIBDIR}/freetype/include
+  ${LIBDIR}/freetype/include/freetype2
 )
 set(FREETYPE_LIBRARY ${LIBDIR}/freetype/lib/freetype2ST.lib)
 windows_find_package(freetype REQUIRED)
 
 if(WITH_FFTW3)
-	set(FFTW3 ${LIBDIR}/fftw3)
-	set(FFTW3_LIBRARIES ${FFTW3}/lib/libfftw.lib)
-	set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
-	set(FFTW3_LIBPATH ${FFTW3}/lib)
+  set(FFTW3 ${LIBDIR}/fftw3)
+  set(FFTW3_LIBRARIES ${FFTW3}/lib/libfftw.lib)
+  set(FFTW3_INCLUDE_DIRS ${FFTW3}/include)
+  set(FFTW3_LIBPATH ${FFTW3}/lib)
 endif()
 
 if(WITH_OPENCOLLADA)
-	set(OPENCOLLADA ${LIBDIR}/opencollada)
-
-	set(OPENCOLLADA_INCLUDE_DIRS
-		${OPENCOLLADA}/include/opencollada/COLLADAStreamWriter
-		${OPENCOLLADA}/include/opencollada/COLLADABaseUtils
-		${OPENCOLLADA}/include/opencollada/COLLADAFramework
-		${OPENCOLLADA}/include/opencollada/COLLADASaxFrameworkLoader
-		${OPENCOLLADA}/include/opencollada/GeneratedSaxParser
-	)
-
-	set(OPENCOLLADA_LIBRARIES
-		${OPENCOLLADA}/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib
-		${OPENCOLLADA}/lib/opencollada/OpenCOLLADAFramework.lib
-		${OPENCOLLADA}/lib/opencollada/OpenCOLLADABaseUtils.lib
-		${OPENCOLLADA}/lib/opencollada/OpenCOLLADAStreamWriter.lib
-		${OPENCOLLADA}/lib/opencollada/MathMLSolver.lib
-		${OPENCOLLADA}/lib/opencollada/GeneratedSaxParser.lib
-		${OPENCOLLADA}/lib/opencollada/xml.lib
-		${OPENCOLLADA}/lib/opencollada/buffer.lib
-		${OPENCOLLADA}/lib/opencollada/ftoa.lib
-	)
-
-	list(APPEND OPENCOLLADA_LIBRARIES ${OPENCOLLADA}/lib/opencollada/UTF.lib)
-
-	set(PCRE_LIBRARIES
-		${OPENCOLLADA}/lib/opencollada/pcre.lib
-	)
+  set(OPENCOLLADA ${LIBDIR}/opencollada)
+
+  set(OPENCOLLADA_INCLUDE_DIRS
+    ${OPENCOLLADA}/include/opencollada/COLLADAStreamWriter
+    ${OPENCOLLADA}/include/opencollada/COLLADABaseUtils
+    ${OPENCOLLADA}/include/opencollada/COLLADAFramework
+    ${OPENCOLLADA}/include/opencollada/COLLADASaxFrameworkLoader
+    ${OPENCOLLADA}/include/opencollada/GeneratedSaxParser
+  )
+
+  set(OPENCOLLADA_LIBRARIES
+    ${OPENCOLLADA}/lib/opencollada/OpenCOLLADASaxFrameworkLoader.lib
+    ${OPENCOLLADA}/lib/opencollada/OpenCOLLADAFramework.lib
+    ${OPENCOLLADA}/lib/opencollada/OpenCOLLADABaseUtils.lib
+    ${OPENCOLLADA}/lib/opencollada/OpenCOLLADAStreamWriter.lib
+    ${OPENCOLLADA}/lib/opencollada/MathMLSolver.lib
+    ${OPENCOLLADA}/lib/opencollada/GeneratedSaxParser.lib
+    ${OPENCOLLADA}/lib/opencollada/xml.lib
+    ${OPENCOLLADA}/lib/opencollada/buffer.lib
+    ${OPENCOLLADA}/lib/opencollada/ftoa.lib
+  )
+
+  list(APPEND OPENCOLLADA_LIBRARIES ${OPENCOLLADA}/lib/opencollada/UTF.lib)
+
+  set(PCRE_LIBRARIES
+    ${OPENCOLLADA}/lib/opencollada/pcre.lib
+  )
 endif()
 
 if(WITH_CODEC_FFMPEG)
-	set(FFMPEG_INCLUDE_DIRS
-		${LIBDIR}/ffmpeg/include
-		${LIBDIR}/ffmpeg/include/msvc
-	)
-	windows_find_package(FFMPEG)
-	if(NOT FFMPEG_FOUND)
-		warn_hardcoded_paths(ffmpeg)
-		set(FFMPEG_LIBRARIES
-			${LIBDIR}/ffmpeg/lib/avcodec.lib
-			${LIBDIR}/ffmpeg/lib/avformat.lib
-			${LIBDIR}/ffmpeg/lib/avdevice.lib
-			${LIBDIR}/ffmpeg/lib/avutil.lib
-			${LIBDIR}/ffmpeg/lib/swscale.lib
-			)
-	endif()
+  set(FFMPEG_INCLUDE_DIRS
+    ${LIBDIR}/ffmpeg/include
+    ${LIBDIR}/ffmpeg/include/msvc
+  )
+  windows_find_package(FFMPEG)
+  if(NOT FFMPEG_FOUND)
+    warn_hardcoded_paths(ffmpeg)
+    set(FFMPEG_LIBRARIES
+      ${LIBDIR}/ffmpeg/lib/avcodec.lib
+      ${LIBDIR}/ffmpeg/lib/avformat.lib
+      ${LIBDIR}/ffmpeg/lib/avdevice.lib
+      ${LIBDIR}/ffmpeg/lib/avutil.lib
+      ${LIBDIR}/ffmpeg/lib/swscale.lib
+      )
+  endif()
 endif()
 
 if(WITH_IMAGE_OPENEXR)
-	set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
-	set(OPENEXR_VERSION "2.1")
-	windows_find_package(OPENEXR REQUIRED)
-	if(NOT OPENEXR_FOUND)
-		warn_hardcoded_paths(OpenEXR)
-		set(OPENEXR ${LIBDIR}/openexr)
-		set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
-		set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
-		set(OPENEXR_LIBPATH ${OPENEXR}/lib)
-		set(OPENEXR_LIBRARIES
-			optimized ${OPENEXR_LIBPATH}/Iex_s.lib
-			optimized ${OPENEXR_LIBPATH}/Half_s.lib
-			optimized ${OPENEXR_LIBPATH}/IlmImf_s.lib
-			optimized ${OPENEXR_LIBPATH}/Imath_s.lib
-			optimized ${OPENEXR_LIBPATH}/IlmThread_s.lib
-			debug ${OPENEXR_LIBPATH}/Iex_s_d.lib
-			debug ${OPENEXR_LIBPATH}/Half_s_d.lib
-			debug ${OPENEXR_LIBPATH}/IlmImf_s_d.lib
-			debug ${OPENEXR_LIBPATH}/Imath_s_d.lib
-			debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
-		)
-	endif()
+  set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
+  set(OPENEXR_VERSION "2.1")
+  windows_find_package(OPENEXR REQUIRED)
+  if(NOT OPENEXR_FOUND)
+    warn_hardcoded_paths(OpenEXR)
+    set(OPENEXR ${LIBDIR}/openexr)
+    set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
+    set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
+    set(OPENEXR_LIBPATH ${OPENEXR}/lib)
+    set(OPENEXR_LIBRARIES
+      optimized ${OPENEXR_LIBPATH}/Iex_s.lib
+      optimized ${OPENEXR_LIBPATH}/Half_s.lib
+      optimized ${OPENEXR_LIBPATH}/IlmImf_s.lib
+      optimized ${OPENEXR_LIBPATH}/Imath_s.lib
+      optimized ${OPENEXR_LIBPATH}/IlmThread_s.lib
+      debug ${OPENEXR_LIBPATH}/Iex_s_d.lib
+      debug ${OPENEXR_LIBPATH}/Half_s_d.lib
+      debug ${OPENEXR_LIBPATH}/IlmImf_s_d.lib
+      debug ${OPENEXR_LIBPATH}/Imath_s_d.lib
+      debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
+    )
+  endif()
 endif()
 
 if(WITH_IMAGE_TIFF)
-	# Try to find tiff first then complain and set static and maybe wrong paths
-	windows_find_package(TIFF)
-	if(NOT TIFF_FOUND)
-		warn_hardcoded_paths(libtiff)
-		set(TIFF_LIBRARY ${LIBDIR}/tiff/lib/libtiff.lib)
-		set(TIFF_INCLUDE_DIR ${LIBDIR}/tiff/include)
-	endif()
+  # Try to find tiff first then complain and set static and maybe wrong paths
+  windows_find_package(TIFF)
+  if(NOT TIFF_FOUND)
+    warn_hardcoded_paths(libtiff)
+    set(TIFF_LIBRARY ${LIBDIR}/tiff/lib/libtiff.lib)
+    set(TIFF_INCLUDE_DIR ${LIBDIR}/tiff/include)
+  endif()
 endif()
 
 if(WITH_JACK)
-	set(JACK_INCLUDE_DIRS
-		${LIBDIR}/jack/include/jack
-		${LIBDIR}/jack/include
-	)
-	set(JACK_LIBRARIES optimized ${LIBDIR}/jack/lib/libjack.lib debug ${LIBDIR}/jack/lib/libjack_d.lib)
+  set(JACK_INCLUDE_DIRS
+    ${LIBDIR}/jack/include/jack
+    ${LIBDIR}/jack/include
+  )
+  set(JACK_LIBRARIES optimized ${LIBDIR}/jack/lib/libjack.lib debug ${LIBDIR}/jack/lib/libjack_d.lib)
 endif()
 
 if(WITH_PYTHON)
-	set(PYTHON_VERSION 3.7) # CACHE STRING)
+  set(PYTHON_VERSION 3.7) # CACHE STRING)
 
-	string(REPLACE "." "" _PYTHON_VERSION_NO_DOTS ${PYTHON_VERSION})
-	# Use shared libs for vc2008 and vc2010 until we actually have vc2010 libs
-	set(PYTHON_LIBRARY ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DOTS}.lib)
-	unset(_PYTHON_VERSION_NO_DOTS)
+  string(REPLACE "." "" _PYTHON_VERSION_NO_DOTS ${PYTHON_VERSION})
+  # Use shared libs for vc2008 and vc2010 until we actually have vc2010 libs
+  set(PYTHON_LIBRARY ${LIBDIR}/python/lib/python${_PYTHON_VERSION_NO_DOTS}.lib)
+  unset(_PYTHON_VERSION_NO_DOTS)
 
-	# Shared includes for both vc2008 and vc2010
-	set(PYTHON_INCLUDE_DIR ${LIBDIR}/python/include/python${PYTHON_VERSION})
+  # Shared includes for both vc2008 and vc2010
+  set(PYTHON_INCLUDE_DIR ${LIBDIR}/python/include/python${PYTHON_VERSION})
 
-	# uncached vars
-	set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
-	set(PYTHON_LIBRARIES  "${PYTHON_LIBRARY}")
+  # uncached vars
+  set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
+  set(PYTHON_LIBRARIES  "${PYTHON_LIBRARY}")
 endif()
 
 if(WITH_BOOST)
-	if(WITH_CYCLES_OSL)
-		set(boost_extra_libs wave)
-	endif()
-	if(WITH_INTERNATIONAL)
-		list(APPEND boost_extra_libs locale)
-	endif()
-	if(WITH_OPENVDB)
-		list(APPEND boost_extra_libs iostreams)
-	endif()
-	set(Boost_USE_STATIC_RUNTIME ON) # prefix lib
-	set(Boost_USE_MULTITHREADED ON) # suffix -mt
-	set(Boost_USE_STATIC_LIBS ON) # suffix -s
-	if(WITH_WINDOWS_FIND_MODULES)
-		find_package(Boost COMPONENTS date_time filesystem thread regex system ${boost_extra_libs})
-	endif()
-	if(NOT Boost_FOUND)
-		warn_hardcoded_paths(BOOST)
-		set(BOOST ${LIBDIR}/boost)
-		set(BOOST_INCLUDE_DIR ${BOOST}/include)
-		set(BOOST_LIBPATH ${BOOST}/lib)
-		if(CMAKE_CL_64)
-			set(BOOST_POSTFIX "vc140-mt-s-x64-1_68.lib")
-			set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x64-1_68.lib")
-		else()
-			set(BOOST_POSTFIX "vc140-mt-s-x32-1_68.lib")
-			set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x32-1_68.lib")
-		endif()
-		set(BOOST_LIBRARIES
-			optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
-			optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
-			optimized ${BOOST_LIBPATH}/libboost_regex-${BOOST_POSTFIX}
-			optimized ${BOOST_LIBPATH}/libboost_system-${BOOST_POSTFIX}
-			optimized ${BOOST_LIBPATH}/libboost_thread-${BOOST_POSTFIX}
-			optimized ${BOOST_LIBPATH}/libboost_chrono-${BOOST_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_date_time-${BOOST_DEBUG_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_DEBUG_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_regex-${BOOST_DEBUG_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_system-${BOOST_DEBUG_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_thread-${BOOST_DEBUG_POSTFIX}
-			debug ${BOOST_LIBPATH}/libboost_chrono-${BOOST_DEBUG_POSTFIX}
-		)
-		if(WITH_CYCLES_OSL)
-			set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
-				optimized ${BOOST_LIBPATH}/libboost_wave-${BOOST_POSTFIX}
-				debug ${BOOST_LIBPATH}/libboost_wave-${BOOST_DEBUG_POSTFIX})
-		endif()
-		if(WITH_INTERNATIONAL)
-			set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
-				optimized ${BOOST_LIBPATH}/libboost_locale-${BOOST_POSTFIX}
-				debug ${BOOST_LIBPATH}/libboost_locale-${BOOST_DEBUG_POSTFIX})
-		endif()
-	else() # we found boost using find_package
-		set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
-		set(BOOST_LIBRARIES ${Boost_LIBRARIES})
-		set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
-	endif()
-	set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
+  if(WITH_CYCLES_OSL)
+    set(boost_extra_libs wave)
+  endif()
+  if(WITH_INTERNATIONAL)
+    list(APPEND boost_extra_libs locale)
+  endif()
+  if(WITH_OPENVDB)
+    list(APPEND boost_extra_libs iostreams)
+  endif()
+  set(Boost_USE_STATIC_RUNTIME ON) # prefix lib
+  set(Boost_USE_MULTITHREADED ON) # suffix -mt
+  set(Boost_USE_STATIC_LIBS ON) # suffix -s
+  if(WITH_WINDOWS_FIND_MODULES)
+    find_package(Boost COMPONENTS date_time filesystem thread regex system ${boost_extra_libs})
+  endif()
+  if(NOT Boost_FOUND)
+    warn_hardcoded_paths(BOOST)
+    set(BOOST ${LIBDIR}/boost)
+    set(BOOST_INCLUDE_DIR ${BOOST}/include)
+    set(BOOST_LIBPATH ${BOOST}/lib)
+    if(CMAKE_CL_64)
+      set(BOOST_POSTFIX "vc140-mt-s-x64-1_68.lib")
+      set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x64-1_68.lib")
+    else()
+      set(BOOST_POSTFIX "vc140-mt-s-x32-1_68.lib")
+      set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x32-1_68.lib")
+    endif()
+    set(BOOST_LIBRARIES
+      optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
+      optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
+      optimized ${BOOST_LIBPATH}/libboost_regex-${BOOST_POSTFIX}
+      optimized ${BOOST_LIBPATH}/libboost_system-${BOOST_POSTFIX}
+      optimized ${BOOST_LIBPATH}/libboost_thread-${BOOST_POSTFIX}
+      optimized ${BOOST_LIBPATH}/libboost_chrono-${BOOST_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_date_time-${BOOST_DEBUG_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_DEBUG_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_regex-${BOOST_DEBUG_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_system-${BOOST_DEBUG_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_thread-${BOOST_DEBUG_POSTFIX}
+      debug ${BOOST_LIBPATH}/libboost_chrono-${BOOST_DEBUG_POSTFIX}
+    )
+    if(WITH_CYCLES_OSL)
+      set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
+        optimized ${BOOST_LIBPATH}/libboost_wave-${BOOST_POSTFIX}
+        debug ${BOOST_LIBPATH}/libboost_wave-${BOOST_DEBUG_POSTFIX})
+    endif()
+    if(WITH_INTERNATIONAL)
+      set(BOOST_LIBRARIES ${BOOST_LIBRARIES}
+        optimized ${BOOST_LIBPATH}/libboost_locale-${BOOST_POSTFIX}
+        debug ${BOOST_LIBPATH}/libboost_locale-${BOOST_DEBUG_POSTFIX})
+    endif()
+  else() # we found boost using find_package
+    set(BOOST_INCLUDE_DIR ${Boost_INCLUDE_DIRS})
+    set(BOOST_LIBRARIES ${Boost_LIBRARIES})
+    set(BOOST_LIBPATH ${Boost_LIBRARY_DIRS})
+  endif()
+  set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB")
 endif()
 
 if(WITH_OPENIMAGEIO)
-	windows_find_package(OpenImageIO)
-	set(OPENIMAGEIO ${LIBDIR}/openimageio)
-	set(OPENIMAGEIO_LIBPATH ${OPENIMAGEIO}/lib)
-	set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
-	set(OIIO_OPTIMIZED optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO.lib optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util.lib)
-	set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
-	set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
+  windows_find_package(OpenImageIO)
+  set(OPENIMAGEIO ${LIBDIR}/openimageio)
+  set(OPENIMAGEIO_LIBPATH ${OPENIMAGEIO}/lib)
+  set(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO}/include)
+  set(OIIO_OPTIMIZED optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO.lib optimized ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util.lib)
+  set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
+  set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
 
-	set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
-	set(OPENCOLORIO_DEFINITIONS "-DOCIO_STATIC_BUILD")
-	set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
-	add_definitions(-DOIIO_STATIC_BUILD)
-	add_definitions(-DOIIO_NO_SSE=1)
+  set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
+  set(OPENCOLORIO_DEFINITIONS "-DOCIO_STATIC_BUILD")
+  set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
+  add_definitions(-DOIIO_STATIC_BUILD)
+  add_definitions(-DOIIO_NO_SSE=1)
 endif()
 
 if(WITH_LLVM)
-	set(LLVM_ROOT_DIR ${LIBDIR}/llvm CACHE PATH	"Path to the LLVM installation")
-	set(LLVM_INCLUDE_DIRS ${LLVM_ROOT_DIR}/$<$<CONFIG:Debug>:Debug>/include CACHE PATH	"Path to the LLVM include directory")
-	file(GLOB LLVM_LIBRARY_OPTIMIZED ${LLVM_ROOT_DIR}/lib/*.lib)
+  set(LLVM_ROOT_DIR ${LIBDIR}/llvm CACHE PATH "Path to the LLVM installation")
+  set(LLVM_INCLUDE_DIRS ${LLVM_ROOT_DIR}/$<$<CONFIG:Debug>:Debug>/include CACHE PATH  "Path to the LLVM include directory")
+  file(GLOB LLVM_LIBRARY_OPTIMIZED ${LLVM_ROOT_DIR}/lib/*.lib)
 
-	if(EXISTS ${LLVM_ROOT_DIR}/debug/lib)
-		foreach(LLVM_OPTIMIZED_LIB ${LLVM_LIBRARY_OPTIMIZED})
-			get_filename_component(LIBNAME ${LLVM_OPTIMIZED_LIB} ABSOLUTE)
-			list(APPEND LLVM_LIBS optimized ${LIBNAME})
-		endforeach(LLVM_OPTIMIZED_LIB)
+  if(EXISTS ${LLVM_ROOT_DIR}/debug/lib)
+    foreach(LLVM_OPTIMIZED_LIB ${LLVM_LIBRARY_OPTIMIZED})
+      get_filename_component(LIBNAME ${LLVM_OPTIMIZED_LIB} ABSOLUTE)
+      list(APPEND LLVM_LIBS optimized ${LIBNAME})
+    endforeach(LLVM_OPTIMIZED_LIB)
 
-		file(GLOB LLVM_LIBRARY_DEBUG ${LLVM_ROOT_DIR}/debug/lib/*.lib)
+    file(GLOB LLVM_LIBRARY_DEBUG ${LLVM_ROOT_DIR}/debug/lib/*.lib)
 
-		foreach(LLVM_DEBUG_LIB ${LLVM_LIBRARY_DEBUG})
-			get_filename_component(LIBNAME ${LLVM_DEBUG_LIB} ABSOLUTE)
-			list(APPEND LLVM_LIBS debug ${LIBNAME})
-		endforeach(LLVM_DEBUG_LIB)
+    foreach(LLVM_DEBUG_LIB ${LLVM_LIBRARY_DEBUG})
+      get_filename_component(LIBNAME ${LLVM_DEBUG_LIB} ABSOLUTE)
+      list(APPEND LLVM_LIBS debug ${LIBNAME})
+    endforeach(LLVM_DEBUG_LIB)
 
-		set(LLVM_LIBRARY ${LLVM_LIBS})
-	else()
-		message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
-		set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
-	endif()
+    set(LLVM_LIBRARY ${LLVM_LIBS})
+  else()
+    message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
+    set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
+  endif()
 
 endif()
 
 if(WITH_OPENCOLORIO)
-	set(OPENCOLORIO ${LIBDIR}/opencolorio)
-	set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
-	set(OPENCOLORIO_LIBPATH ${LIBDIR}/opencolorio/lib)
-	set(OPENCOLORIO_LIBRARIES
-		optimized ${OPENCOLORIO_LIBPATH}/OpenColorIO.lib
-		optimized ${OPENCOLORIO_LIBPATH}/tinyxml.lib
-		optimized ${OPENCOLORIO_LIBPATH}/libyaml-cpp.lib
-		debug ${OPENCOLORIO_LIBPATH}/OpenColorIO_d.lib
-		debug ${OPENCOLORIO_LIBPATH}/tinyxml_d.lib
-		debug ${OPENCOLORIO_LIBPATH}/libyaml-cpp_d.lib
-	)
-	set(OPENCOLORIO_DEFINITIONS)
+  set(OPENCOLORIO ${LIBDIR}/opencolorio)
+  set(OPENCOLORIO_INCLUDE_DIRS ${OPENCOLORIO}/include)
+  set(OPENCOLORIO_LIBPATH ${LIBDIR}/opencolorio/lib)
+  set(OPENCOLORIO_LIBRARIES
+    optimized ${OPENCOLORIO_LIBPATH}/OpenColorIO.lib
+    optimized ${OPENCOLORIO_LIBPATH}/tinyxml.lib
+    optimized ${OPENCOLORIO_LIBPATH}/libyaml-cpp.lib
+    debug ${OPENCOLORIO_LIBPATH}/OpenColorIO_d.lib
+    debug ${OPENCOLORIO_LIBPATH}/tinyxml_d.lib
+    debug ${OPENCOLORIO_LIBPATH}/libyaml-cpp_d.lib
+  )
+  set(OPENCOLORIO_DEFINITIONS)
 endif()
 
 if(WITH_OPENVDB)
-	set(BLOSC_LIBRARIES optimized ${LIBDIR}/blosc/lib/libblosc.lib debug ${LIBDIR}/blosc/lib/libblosc_d.lib)
-	set(TBB_LIBRARIES optimized ${LIBDIR}/tbb/lib/tbb.lib debug ${LIBDIR}/tbb/lib/tbb_debug.lib)
-	set(TBB_INCLUDE_DIR ${LIBDIR}/tbb/include)
-	set(OPENVDB ${LIBDIR}/openvdb)
-	set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
-	set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include ${TBB_INCLUDE_DIR})
-	set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
-	set(OPENVDB_DEFINITIONS -DNOMINMAX)
+  set(BLOSC_LIBRARIES optimized ${LIBDIR}/blosc/lib/libblosc.lib debug ${LIBDIR}/blosc/lib/libblosc_d.lib)
+  set(TBB_LIBRARIES optimized ${LIBDIR}/tbb/lib/tbb.lib debug ${LIBDIR}/tbb/lib/tbb_debug.lib)
+  set(TBB_INCLUDE_DIR ${LIBDIR}/tbb/include)
+  set(OPENVDB ${LIBDIR}/openvdb)
+  set(OPENVDB_LIBPATH ${LIBDIR}/openvdb/lib)
+  set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include ${TBB_INCLUDE_DIR})
+  set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib ${TBB_LIBRARIES} ${BLOSC_LIBRARIES})
+  set(OPENVDB_DEFINITIONS -DNOMINMAX)
 endif()
 
 if(WITH_ALEMBIC)
-	set(ALEMBIC ${LIBDIR}/alembic)
-	set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
-	set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
-	set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
-	set(ALEMBIC_LIBRARIES optimized ${ALEMBIC}/lib/alembic.lib debug ${ALEMBIC}/lib/alembic_d.lib)
-	set(ALEMBIC_FOUND 1)
+  set(ALEMBIC ${LIBDIR}/alembic)
+  set(ALEMBIC_INCLUDE_DIR ${ALEMBIC}/include)
+  set(ALEMBIC_INCLUDE_DIRS ${ALEMBIC_INCLUDE_DIR})
+  set(ALEMBIC_LIBPATH ${ALEMBIC}/lib)
+  set(ALEMBIC_LIBRARIES optimized ${ALEMBIC}/lib/alembic.lib debug ${ALEMBIC}/lib/alembic_d.lib)
+  set(ALEMBIC_FOUND 1)
 endif()
 
 if(WITH_MOD_CLOTH_ELTOPO)
-	set(LAPACK ${LIBDIR}/lapack)
-	# set(LAPACK_INCLUDE_DIR ${LAPACK}/include)
-	set(LAPACK_LIBPATH ${LAPACK}/lib)
-	set(LAPACK_LIBRARIES
-		${LIBDIR}/lapack/lib/libf2c.lib
-		${LIBDIR}/lapack/lib/clapack_nowrap.lib
-		${LIBDIR}/lapack/lib/BLAS_nowrap.lib
-	)
+  set(LAPACK ${LIBDIR}/lapack)
+  # set(LAPACK_INCLUDE_DIR ${LAPACK}/include)
+  set(LAPACK_LIBPATH ${LAPACK}/lib)
+  set(LAPACK_LIBRARIES
+    ${LIBDIR}/lapack/lib/libf2c.lib
+    ${LIBDIR}/lapack/lib/clapack_nowrap.lib
+    ${LIBDIR}/lapack/lib/BLAS_nowrap.lib
+  )
 endif()
 
 if(WITH_IMAGE_OPENJPEG)
-	set(OPENJPEG ${LIBDIR}/openjpeg)
-	set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
-	set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
+  set(OPENJPEG ${LIBDIR}/openjpeg)
+  set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
+  set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
 endif()
 
 if(WITH_OPENSUBDIV)
-	set(OPENSUBDIV_INCLUDE_DIR ${LIBDIR}/opensubdiv/include)
-	set(OPENSUBDIV_LIBPATH ${LIBDIR}/opensubdiv/lib)
-	set(OPENSUBDIV_LIBRARIES
-		optimized ${OPENSUBDIV_LIBPATH}/osdCPU.lib
-		optimized ${OPENSUBDIV_LIBPATH}/osdGPU.lib
-		debug ${OPENSUBDIV_LIBPATH}/osdCPU_d.lib
-		debug ${OPENSUBDIV_LIBPATH}/osdGPU_d.lib
-	)
-	set(OPENSUBDIV_HAS_OPENMP TRUE)
-	set(OPENSUBDIV_HAS_TBB FALSE)
-	set(OPENSUBDIV_HAS_OPENCL TRUE)
-	set(OPENSUBDIV_HAS_CUDA FALSE)
-	set(OPENSUBDIV_HAS_GLSL_TRANSFORM_FEEDBACK TRUE)
-	set(OPENSUBDIV_HAS_GLSL_COMPUTE TRUE)
-	windows_find_package(OpenSubdiv)
+  set(OPENSUBDIV_INCLUDE_DIR ${LIBDIR}/opensubdiv/include)
+  set(OPENSUBDIV_LIBPATH ${LIBDIR}/opensubdiv/lib)
+  set(OPENSUBDIV_LIBRARIES
+    optimized ${OPENSUBDIV_LIBPATH}/osdCPU.lib
+    optimized ${OPENSUBDIV_LIBPATH}/osdGPU.lib
+    debug ${OPENSUBDIV_LIBPATH}/osdCPU_d.lib
+    debug ${OPENSUBDIV_LIBPATH}/osdGPU_d.lib
+  )
+  set(OPENSUBDIV_HAS_OPENMP TRUE)
+  set(OPENSUBDIV_HAS_TBB FALSE)
+  set(OPENSUBDIV_HAS_OPENCL TRUE)
+  set(OPENSUBDIV_HAS_CUDA FALSE)
+  set(OPENSUBDIV_HAS_GLSL_TRANSFORM_FEEDBACK TRUE)
+  set(OPENSUBDIV_HAS_GLSL_COMPUTE TRUE)
+  windows_find_package(OpenSubdiv)
 endif()
 
 if(WITH_SDL)
-	set(SDL ${LIBDIR}/sdl)
-	set(SDL_INCLUDE_DIR ${SDL}/include)
-	set(SDL_LIBPATH ${SDL}/lib)
-	set(SDL_LIBRARY ${SDL_LIBPATH}/SDL2.lib)
+  set(SDL ${LIBDIR}/sdl)
+  set(SDL_INCLUDE_DIR ${SDL}/include)
+  set(SDL_LIBPATH ${SDL}/lib)
+  set(SDL_LIBRARY ${SDL_LIBPATH}/SDL2.lib)
 endif()
 
 # Audio IO
 if(WITH_SYSTEM_AUDASPACE)
-	set(AUDASPACE_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
-	set(AUDASPACE_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace.lib)
-	set(AUDASPACE_C_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
-	set(AUDASPACE_C_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-c.lib)
-	set(AUDASPACE_PY_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
-	set(AUDASPACE_PY_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-py.lib)
+  set(AUDASPACE_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
+  set(AUDASPACE_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace.lib)
+  set(AUDASPACE_C_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
+  set(AUDASPACE_C_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-c.lib)
+  set(AUDASPACE_PY_INCLUDE_DIRS ${LIBDIR}/audaspace/include/audaspace)
+  set(AUDASPACE_PY_LIBRARIES ${LIBDIR}/audaspace/lib/audaspace-py.lib)
 endif()
 
 # used in many places so include globally, like OpenGL
@@ -544,130 +544,130 @@ blender_include_dirs_sys("${PTHREADS_INCLUDE_DIRS}")
 #find signtool
 set(ProgramFilesX86_NAME "ProgramFiles(x86)") #env dislikes the ( )
 find_program(SIGNTOOL_EXE signtool
-	HINTS
-		"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/10/bin/x86/"
-		"$ENV{ProgramFiles}/Windows Kits/10/bin/x86/"
-		"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.1/bin/x86/"
-		"$ENV{ProgramFiles}/Windows Kits/8.1/bin/x86/"
-		"$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.0/bin/x86/"
-		"$ENV{ProgramFiles}/Windows Kits/8.0/bin/x86/"
+  HINTS
+    "$ENV{${ProgramFilesX86_NAME}}/Windows Kits/10/bin/x86/"
+    "$ENV{ProgramFiles}/Windows Kits/10/bin/x86/"
+    "$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.1/bin/x86/"
+    "$ENV{ProgramFiles}/Windows Kits/8.1/bin/x86/"
+    "$ENV{${ProgramFilesX86_NAME}}/Windows Kits/8.0/bin/x86/"
+    "$ENV{ProgramFiles}/Windows Kits/8.0/bin/x86/"
 )
 set(WINTAB_INC ${LIBDIR}/wintab/include)
 
 if(WITH_OPENAL)
-	set(OPENAL ${LIBDIR}/openal)
-	set(OPENALDIR ${LIBDIR}/openal)
-	set(OPENAL_INCLUDE_DIR ${OPENAL}/include/AL)
-	set(OPENAL_LIBPATH ${OPENAL}/lib)
-	if(MSVC)
-		set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/openal32.lib)
-	else()
-		set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/wrap_oal.lib)
-	endif()
+  set(OPENAL ${LIBDIR}/openal)
+  set(OPENALDIR ${LIBDIR}/openal)
+  set(OPENAL_INCLUDE_DIR ${OPENAL}/include/AL)
+  set(OPENAL_LIBPATH ${OPENAL}/lib)
+  if(MSVC)
+    set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/openal32.lib)
+  else()
+    set(OPENAL_LIBRARY ${OPENAL_LIBPATH}/wrap_oal.lib)
+  endif()
 
 endif()
 
 if(WITH_CODEC_SNDFILE)
-	set(LIBSNDFILE ${LIBDIR}/sndfile)
-	set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
-	set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib) # TODO, deprecate
-	set(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBPATH}/libsndfile-1.lib)
+  set(LIBSNDFILE ${LIBDIR}/sndfile)
+  set(LIBSNDFILE_INCLUDE_DIRS ${LIBSNDFILE}/include)
+  set(LIBSNDFILE_LIBPATH ${LIBSNDFILE}/lib) # TODO, deprecate
+  set(LIBSNDFILE_LIBRARIES ${LIBSNDFILE_LIBPATH}/libsndfile-1.lib)
 endif()
 
 if(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
-	add_definitions(-D__SSE__ -D__MMX__)
+  add_definitions(-D__SSE__ -D__MMX__)
 endif()
 
 if(WITH_CYCLES_OSL)
-	set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
-
-	find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_EXEC_DEBUG NAMES oslexec_d PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_COMP_DEBUG NAMES oslcomp_d PATHS ${CYCLES_OSL}/lib)
-	find_library(OSL_LIB_QUERY_DEBUG NAMES oslquery_d PATHS ${CYCLES_OSL}/lib)
-	list(APPEND OSL_LIBRARIES
-		optimized ${OSL_LIB_COMP}
-		optimized ${OSL_LIB_EXEC}
-		optimized ${OSL_LIB_QUERY}
-		optimized ${CYCLES_OSL}/lib/pugixml.lib
-		debug ${OSL_LIB_EXEC_DEBUG}
-		debug ${OSL_LIB_COMP_DEBUG}
-		debug ${OSL_LIB_QUERY_DEBUG}
-		debug ${CYCLES_OSL}/lib/pugixml_d.lib
-	)
-	find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
-	find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
-
-	if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
-		set(OSL_FOUND TRUE)
-	else()
-		message(STATUS "OSL not found")
-		set(WITH_CYCLES_OSL OFF)
-	endif()
+  set(CYCLES_OSL ${LIBDIR}/osl CACHE PATH "Path to OpenShadingLanguage installation")
+
+  find_library(OSL_LIB_EXEC NAMES oslexec PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_COMP NAMES oslcomp PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_QUERY NAMES oslquery PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_EXEC_DEBUG NAMES oslexec_d PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_COMP_DEBUG NAMES oslcomp_d PATHS ${CYCLES_OSL}/lib)
+  find_library(OSL_LIB_QUERY_DEBUG NAMES oslquery_d PATHS ${CYCLES_OSL}/lib)
+  list(APPEND OSL_LIBRARIES
+    optimized ${OSL_LIB_COMP}
+    optimized ${OSL_LIB_EXEC}
+    optimized ${OSL_LIB_QUERY}
+    optimized ${CYCLES_OSL}/lib/pugixml.lib
+    debug ${OSL_LIB_EXEC_DEBUG}
+    debug ${OSL_LIB_COMP_DEBUG}
+    debug ${OSL_LIB_QUERY_DEBUG}
+    debug ${CYCLES_OSL}/lib/pugixml_d.lib
+  )
+  find_path(OSL_INCLUDE_DIR OSL/oslclosure.h PATHS ${CYCLES_OSL}/include)
+  find_program(OSL_COMPILER NAMES oslc PATHS ${CYCLES_OSL}/bin)
+
+  if(OSL_INCLUDE_DIR AND OSL_LIBRARIES AND OSL_COMPILER)
+    set(OSL_FOUND TRUE)
+  else()
+    message(STATUS "OSL not found")
+    set(WITH_CYCLES_OSL OFF)
+  endif()
 endif()
 
 if(WITH_CYCLES_EMBREE)
-	windows_find_package(Embree)
-	if(NOT EMBREE_FOUND)
-		set(EMBREE_INCLUDE_DIRS ${LIBDIR}/embree/include)
-		set(EMBREE_LIBRARIES
-			optimized ${LIBDIR}/embree/lib/embree3.lib
-			optimized ${LIBDIR}/embree/lib/embree_avx2.lib
-			optimized ${LIBDIR}/embree/lib/embree_avx.lib
-			optimized ${LIBDIR}/embree/lib/embree_sse42.lib
-			optimized ${LIBDIR}/embree/lib/lexers.lib
-			optimized ${LIBDIR}/embree/lib/math.lib
-			optimized ${LIBDIR}/embree/lib/simd.lib
-			optimized ${LIBDIR}/embree/lib/sys.lib
-			optimized ${LIBDIR}/embree/lib/tasking.lib
-
-			debug ${LIBDIR}/embree/lib/embree3_d.lib
-			debug ${LIBDIR}/embree/lib/embree_avx2_d.lib
-			debug ${LIBDIR}/embree/lib/embree_avx_d.lib
-			debug ${LIBDIR}/embree/lib/embree_sse42_d.lib
-			debug ${LIBDIR}/embree/lib/lexers_d.lib
-			debug ${LIBDIR}/embree/lib/math_d.lib
-			debug ${LIBDIR}/embree/lib/simd_d.lib
-			debug ${LIBDIR}/embree/lib/sys_d.lib
-			debug ${LIBDIR}/embree/lib/tasking_d.lib)
-	endif()
+  windows_find_package(Embree)
+  if(NOT EMBREE_FOUND)
+    set(EMBREE_INCLUDE_DIRS ${LIBDIR}/embree/include)
+    set(EMBREE_LIBRARIES
+      optimized ${LIBDIR}/embree/lib/embree3.lib
+      optimized ${LIBDIR}/embree/lib/embree_avx2.lib
+      optimized ${LIBDIR}/embree/lib/embree_avx.lib
+      optimized ${LIBDIR}/embree/lib/embree_sse42.lib
+      optimized ${LIBDIR}/embree/lib/lexers.lib
+      optimized ${LIBDIR}/embree/lib/math.lib
+      optimized ${LIBDIR}/embree/lib/simd.lib
+      optimized ${LIBDIR}/embree/lib/sys.lib
+      optimized ${LIBDIR}/embree/lib/tasking.lib
+
+      debug ${LIBDIR}/embree/lib/embree3_d.lib
+      debug ${LIBDIR}/embree/lib/embree_avx2_d.lib
+      debug ${LIBDIR}/embree/lib/embree_avx_d.lib
+      debug ${LIBDIR}/embree/lib/embree_sse42_d.lib
+      debug ${LIBDIR}/embree/lib/lexers_d.lib
+      debug ${LIBDIR}/embree/lib/math_d.lib
+      debug ${LIBDIR}/embree/lib/simd_d.lib
+      debug ${LIBDIR}/embree/lib/sys_d.lib
+      debug ${LIBDIR}/embree/lib/tasking_d.lib)
+  endif()
 endif()
 
 if (WINDOWS_PYTHON_DEBUG)
-	# Include the system scripts in the blender_python_system_scripts project.
-	FILE(GLOB_RECURSE inFiles "${CMAKE_SOURCE_DIR}/release/scripts/*.*" )
-	ADD_CUSTOM_TARGET(blender_python_system_scripts SOURCES ${inFiles})
-	foreach(_source IN ITEMS ${inFiles})
-		get_filename_component(_source_path "${_source}" PATH)
-		string(REPLACE "${CMAKE_SOURCE_DIR}/release/scripts/" "" _source_path "${_source_path}")
-		string(REPLACE "/" "\\" _group_path "${_source_path}")
-		source_group("${_group_path}" FILES "${_source}")
-	endforeach()
-	# Include the user scripts from the profile folder in the blender_python_user_scripts project.
-	set(USER_SCRIPTS_ROOT "$ENV{appdata}/blender foundation/blender/${BLENDER_VERSION}")
-	file(TO_CMAKE_PATH ${USER_SCRIPTS_ROOT} USER_SCRIPTS_ROOT)
-	FILE(GLOB_RECURSE inFiles "${USER_SCRIPTS_ROOT}/scripts/*.*" )
-	ADD_CUSTOM_TARGET(blender_python_user_scripts SOURCES ${inFiles})
-	foreach(_source IN ITEMS ${inFiles})
-		get_filename_component(_source_path "${_source}" PATH)
-		string(REPLACE "${USER_SCRIPTS_ROOT}/scripts" "" _source_path "${_source_path}")
-		string(REPLACE "/" "\\" _group_path "${_source_path}")
-		source_group("${_group_path}" FILES "${_source}")
-	endforeach()
-	set_target_properties(blender_python_system_scripts PROPERTIES FOLDER "scripts")
-	set_target_properties(blender_python_user_scripts PROPERTIES FOLDER "scripts")
-	# Set the default debugging options for the project, only write this file once so the user
-	# is free to override them at their own perril.
-	set(USER_PROPS_FILE "${CMAKE_CURRENT_BINARY_DIR}/source/creator/blender.Cpp.user.props")
-	if(NOT EXISTS ${USER_PROPS_FILE})
-		# Layout below is messy, because otherwise the generated file will look messy.
-		file(WRITE ${USER_PROPS_FILE} "<?xml version=\"1.0\" encoding=\"utf-8\"?>
+  # Include the system scripts in the blender_python_system_scripts project.
+  FILE(GLOB_RECURSE inFiles "${CMAKE_SOURCE_DIR}/release/scripts/*.*" )
+  ADD_CUSTOM_TARGET(blender_python_system_scripts SOURCES ${inFiles})
+  foreach(_source IN ITEMS ${inFiles})
+    get_filename_component(_source_path "${_source}" PATH)
+    string(REPLACE "${CMAKE_SOURCE_DIR}/release/scripts/" "" _source_path "${_source_path}")
+    string(REPLACE "/" "\\" _group_path "${_source_path}")
+    source_group("${_group_path}" FILES "${_source}")
+  endforeach()
+  # Include the user scripts from the profile folder in the blender_python_user_scripts project.
+  set(USER_SCRIPTS_ROOT "$ENV{appdata}/blender foundation/blender/${BLENDER_VERSION}")
+  file(TO_CMAKE_PATH ${USER_SCRIPTS_ROOT} USER_SCRIPTS_ROOT)
+  FILE(GLOB_RECURSE inFiles "${USER_SCRIPTS_ROOT}/scripts/*.*" )
+  ADD_CUSTOM_TARGET(blender_python_user_scripts SOURCES ${inFiles})
+  foreach(_source IN ITEMS ${inFiles})
+    get_filename_component(_source_path "${_source}" PATH)
+    string(REPLACE "${USER_SCRIPTS_ROOT}/scripts" "" _source_path "${_source_path}")
+    string(REPLACE "/" "\\" _group_path "${_source_path}")
+    source_group("${_group_path}" FILES "${_source}")
+  endforeach()
+  set_target_properties(blender_python_system_scripts PROPERTIES FOLDER "scripts")
+  set_target_properties(blender_python_user_scripts PROPERTIES FOLDER "scripts")
+  # Set the default debugging options for the project, only write this file once so the user
+  # is free to override them at their own perril.
+  set(USER_PROPS_FILE "${CMAKE_CURRENT_BINARY_DIR}/source/creator/blender.Cpp.user.props")
+  if(NOT EXISTS ${USER_PROPS_FILE})
+    # Layout below is messy, because otherwise the generated file will look messy.
+    file(WRITE ${USER_PROPS_FILE} "<?xml version=\"1.0\" encoding=\"utf-8\"?>
 <Project DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">
-	<PropertyGroup>
-		<LocalDebuggerCommandArguments>-con --env-system-scripts \"${CMAKE_SOURCE_DIR}/release/scripts\" </LocalDebuggerCommandArguments>
-	</PropertyGroup>
+  <PropertyGroup>
+    <LocalDebuggerCommandArguments>-con --env-system-scripts \"${CMAKE_SOURCE_DIR}/release/scripts\" </LocalDebuggerCommandArguments>
+  </PropertyGroup>
 </Project>")
-	endif()
+  endif()
 endif()
diff --git a/extern/CMakeLists.txt b/extern/CMakeLists.txt
index 450f5e64351b672b785a94922217ce7cfad9e03e..3b2a8c172aaaabf78ad89a94f5e9c72bbb875252 100644
--- a/extern/CMakeLists.txt
+++ b/extern/CMakeLists.txt
@@ -26,9 +26,9 @@ remove_strict_flags()
 
 # Not a strict flag, but noisy for code we don't maintain
 if(CMAKE_COMPILER_IS_GNUCC)
-	remove_cc_flag(
-		"-Wmisleading-indentation"
-	)
+  remove_cc_flag(
+    "-Wmisleading-indentation"
+  )
 endif()
 
 
@@ -36,72 +36,72 @@ add_subdirectory(rangetree)
 add_subdirectory(wcwidth)
 
 if(WITH_BULLET)
-	if(NOT WITH_SYSTEM_BULLET)
-		add_subdirectory(bullet2)
-	endif()
+  if(NOT WITH_SYSTEM_BULLET)
+    add_subdirectory(bullet2)
+  endif()
 endif()
 
 if(WITH_DRACO)
-	add_subdirectory(draco)
+  add_subdirectory(draco)
 endif()
 
 # now only available in a branch
 #if(WITH_MOD_CLOTH_ELTOPO)
-#	add_subdirectory(eltopo)
+#   add_subdirectory(eltopo)
 #endif()
 
 if(WITH_BINRELOC)
-	add_subdirectory(binreloc)
+  add_subdirectory(binreloc)
 endif()
 
 if(NOT WITH_SYSTEM_GLEW)
-	if(WITH_GLEW_ES)
-		add_subdirectory(glew-es)
-	else()
-		add_subdirectory(glew)
-	endif()
+  if(WITH_GLEW_ES)
+    add_subdirectory(glew-es)
+  else()
+    add_subdirectory(glew)
+  endif()
 endif()
 
 if(WITH_LZO AND NOT WITH_SYSTEM_LZO)
-	add_subdirectory(lzo)
+  add_subdirectory(lzo)
 endif()
 
 if(WITH_LZMA)
-	add_subdirectory(lzma)
+  add_subdirectory(lzma)
 endif()
 
 if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
-	add_subdirectory(clew)
-	if(WITH_CUDA_DYNLOAD)
-		add_subdirectory(cuew)
-	endif()
+  add_subdirectory(clew)
+  if(WITH_CUDA_DYNLOAD)
+    add_subdirectory(cuew)
+  endif()
 endif()
 
 if(WITH_X11 AND WITH_GHOST_XDND)
-	add_subdirectory(xdnd)
+  add_subdirectory(xdnd)
 endif()
 
 if(WITH_LIBMV)
-	add_subdirectory(ceres)
+  add_subdirectory(ceres)
 endif()
 
 if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
-	if(NOT WITH_SYSTEM_GFLAGS)
-		add_subdirectory(gflags)
-	endif()
-	add_subdirectory(glog)
+  if(NOT WITH_SYSTEM_GFLAGS)
+    add_subdirectory(gflags)
+  endif()
+  add_subdirectory(glog)
 endif()
 
 if(WITH_GTESTS)
-	add_subdirectory(gtest)
-	add_subdirectory(gmock)
+  add_subdirectory(gtest)
+  add_subdirectory(gmock)
 endif()
 
 if(WITH_SDL AND WITH_SDL_DYNLOAD)
-	add_subdirectory(sdlew)
+  add_subdirectory(sdlew)
 endif()
 
 if(WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE)
-	set(AUDASPACE_CMAKE_CFG ${CMAKE_CURRENT_SOURCE_DIR}/audaspace/blender_config.cmake)
-	add_subdirectory(audaspace)
+  set(AUDASPACE_CMAKE_CFG ${CMAKE_CURRENT_SOURCE_DIR}/audaspace/blender_config.cmake)
+  add_subdirectory(audaspace)
 endif()
diff --git a/extern/audaspace/CMakeLists.txt b/extern/audaspace/CMakeLists.txt
index c9f709b8c105dd36a46dcee5b5a33a5abe7c0e78..9e7592fd5f4ab9d12dd449a41b093b55af9c256a 100644
--- a/extern/audaspace/CMakeLists.txt
+++ b/extern/audaspace/CMakeLists.txt
@@ -18,7 +18,7 @@ cmake_minimum_required(VERSION 3.0)
 include(CMakeDependentOption)
 
 if(POLICY CMP0054)
-	cmake_policy(SET CMP0054 NEW)
+  cmake_policy(SET CMP0054 NEW)
 endif()
 
 project(audaspace)
@@ -27,223 +27,223 @@ set(AUDASPACE_VERSION 1.3)
 set(AUDASPACE_LONG_VERSION ${AUDASPACE_VERSION}.0)
 
 if(DEFINED AUDASPACE_CMAKE_CFG)
-	include(${AUDASPACE_CMAKE_CFG})
+  include(${AUDASPACE_CMAKE_CFG})
 endif()
 
 if(NOT DEFINED AUDASPACE_STANDALONE)
-	set(AUDASPACE_STANDALONE TRUE)
+  set(AUDASPACE_STANDALONE TRUE)
 endif()
 
 # sources
 
 set(SRC
-	src/devices/DefaultSynchronizer.cpp
-	src/devices/DeviceManager.cpp
-	src/devices/NULLDevice.cpp
-	src/devices/ReadDevice.cpp
-	src/devices/SoftwareDevice.cpp
-	src/Exception.cpp
-	src/file/File.cpp
-	src/file/FileManager.cpp
-	src/file/FileWriter.cpp
-	src/fx/Accumulator.cpp
-	src/fx/ADSR.cpp
-	src/fx/ADSRReader.cpp
-	src/fx/BaseIIRFilterReader.cpp
-	src/fx/ButterworthCalculator.cpp
-	src/fx/Butterworth.cpp
-	src/fx/CallbackIIRFilterReader.cpp
-	src/fx/Delay.cpp
-	src/fx/DelayReader.cpp
-	src/fx/DynamicIIRFilter.cpp
-	src/fx/DynamicIIRFilterReader.cpp
-	src/fx/DynamicMusic.cpp
-	src/fx/Effect.cpp
-	src/fx/EffectReader.cpp
-	src/fx/Envelope.cpp
-	src/fx/Fader.cpp
-	src/fx/FaderReader.cpp
-	src/fx/HighpassCalculator.cpp
-	src/fx/Highpass.cpp
-	src/fx/IIRFilter.cpp
-	src/fx/IIRFilterReader.cpp
-	src/fx/Limiter.cpp
-	src/fx/LimiterReader.cpp
-	src/fx/Loop.cpp
-	src/fx/LoopReader.cpp
-	src/fx/LowpassCalculator.cpp
-	src/fx/Lowpass.cpp
-	src/fx/Modulator.cpp
-	src/fx/ModulatorReader.cpp
-	src/fx/MutableReader.cpp
-	src/fx/MutableSound.cpp
-	src/fx/Pitch.cpp
-	src/fx/PitchReader.cpp
-	src/fx/PlaybackManager.cpp
-	src/fx/PlaybackCategory.cpp
-	src/fx/Reverse.cpp
-	src/fx/ReverseReader.cpp
-	src/fx/SoundList.cpp
-	src/fx/Source.cpp
-	src/fx/Sum.cpp
-	src/fx/Threshold.cpp
-	src/fx/Volume.cpp
-	src/fx/VolumeReader.cpp
-	src/fx/VolumeSound.cpp
-	src/fx/VolumeStorage.cpp
-	src/generator/Sawtooth.cpp
-	src/generator/SawtoothReader.cpp
-	src/generator/Silence.cpp
-	src/generator/SilenceReader.cpp
-	src/generator/Sine.cpp
-	src/generator/SineReader.cpp
-	src/generator/Square.cpp
-	src/generator/SquareReader.cpp
-	src/generator/Triangle.cpp
-	src/generator/TriangleReader.cpp
-	src/respec/ChannelMapper.cpp
-	src/respec/ChannelMapperReader.cpp
-	src/respec/Converter.cpp
-	src/respec/ConverterFunctions.cpp
-	src/respec/ConverterReader.cpp
-	src/respec/JOSResample.cpp
-	src/respec/JOSResampleReaderCoeff.cpp
-	src/respec/JOSResampleReader.cpp
-	src/respec/LinearResample.cpp
-	src/respec/LinearResampleReader.cpp
-	src/respec/Mixer.cpp
-	src/respec/ResampleReader.cpp
-	src/respec/SpecsChanger.cpp
-	src/sequence/AnimateableProperty.cpp
-	src/sequence/Double.cpp
-	src/sequence/DoubleReader.cpp
-	src/sequence/PingPong.cpp
-	src/sequence/Sequence.cpp
-	src/sequence/SequenceData.cpp
-	src/sequence/SequenceEntry.cpp
-	src/sequence/SequenceHandle.cpp
-	src/sequence/SequenceReader.cpp
-	src/sequence/Superpose.cpp
-	src/sequence/SuperposeReader.cpp
-	src/util/Barrier.cpp
-	src/util/Buffer.cpp
-	src/util/BufferReader.cpp
-	src/util/StreamBuffer.cpp
-	src/util/ThreadPool.cpp
+  src/devices/DefaultSynchronizer.cpp
+  src/devices/DeviceManager.cpp
+  src/devices/NULLDevice.cpp
+  src/devices/ReadDevice.cpp
+  src/devices/SoftwareDevice.cpp
+  src/Exception.cpp
+  src/file/File.cpp
+  src/file/FileManager.cpp
+  src/file/FileWriter.cpp
+  src/fx/Accumulator.cpp
+  src/fx/ADSR.cpp
+  src/fx/ADSRReader.cpp
+  src/fx/BaseIIRFilterReader.cpp
+  src/fx/ButterworthCalculator.cpp
+  src/fx/Butterworth.cpp
+  src/fx/CallbackIIRFilterReader.cpp
+  src/fx/Delay.cpp
+  src/fx/DelayReader.cpp
+  src/fx/DynamicIIRFilter.cpp
+  src/fx/DynamicIIRFilterReader.cpp
+  src/fx/DynamicMusic.cpp
+  src/fx/Effect.cpp
+  src/fx/EffectReader.cpp
+  src/fx/Envelope.cpp
+  src/fx/Fader.cpp
+  src/fx/FaderReader.cpp
+  src/fx/HighpassCalculator.cpp
+  src/fx/Highpass.cpp
+  src/fx/IIRFilter.cpp
+  src/fx/IIRFilterReader.cpp
+  src/fx/Limiter.cpp
+  src/fx/LimiterReader.cpp
+  src/fx/Loop.cpp
+  src/fx/LoopReader.cpp
+  src/fx/LowpassCalculator.cpp
+  src/fx/Lowpass.cpp
+  src/fx/Modulator.cpp
+  src/fx/ModulatorReader.cpp
+  src/fx/MutableReader.cpp
+  src/fx/MutableSound.cpp
+  src/fx/Pitch.cpp
+  src/fx/PitchReader.cpp
+  src/fx/PlaybackManager.cpp
+  src/fx/PlaybackCategory.cpp
+  src/fx/Reverse.cpp
+  src/fx/ReverseReader.cpp
+  src/fx/SoundList.cpp
+  src/fx/Source.cpp
+  src/fx/Sum.cpp
+  src/fx/Threshold.cpp
+  src/fx/Volume.cpp
+  src/fx/VolumeReader.cpp
+  src/fx/VolumeSound.cpp
+  src/fx/VolumeStorage.cpp
+  src/generator/Sawtooth.cpp
+  src/generator/SawtoothReader.cpp
+  src/generator/Silence.cpp
+  src/generator/SilenceReader.cpp
+  src/generator/Sine.cpp
+  src/generator/SineReader.cpp
+  src/generator/Square.cpp
+  src/generator/SquareReader.cpp
+  src/generator/Triangle.cpp
+  src/generator/TriangleReader.cpp
+  src/respec/ChannelMapper.cpp
+  src/respec/ChannelMapperReader.cpp
+  src/respec/Converter.cpp
+  src/respec/ConverterFunctions.cpp
+  src/respec/ConverterReader.cpp
+  src/respec/JOSResample.cpp
+  src/respec/JOSResampleReaderCoeff.cpp
+  src/respec/JOSResampleReader.cpp
+  src/respec/LinearResample.cpp
+  src/respec/LinearResampleReader.cpp
+  src/respec/Mixer.cpp
+  src/respec/ResampleReader.cpp
+  src/respec/SpecsChanger.cpp
+  src/sequence/AnimateableProperty.cpp
+  src/sequence/Double.cpp
+  src/sequence/DoubleReader.cpp
+  src/sequence/PingPong.cpp
+  src/sequence/Sequence.cpp
+  src/sequence/SequenceData.cpp
+  src/sequence/SequenceEntry.cpp
+  src/sequence/SequenceHandle.cpp
+  src/sequence/SequenceReader.cpp
+  src/sequence/Superpose.cpp
+  src/sequence/SuperposeReader.cpp
+  src/util/Barrier.cpp
+  src/util/Buffer.cpp
+  src/util/BufferReader.cpp
+  src/util/StreamBuffer.cpp
+  src/util/ThreadPool.cpp
 )
 
 set(PRIVATE_HDR
-	src/sequence/SequenceHandle.h
+  src/sequence/SequenceHandle.h
 )
 
 set(PUBLIC_HDR
-	include/devices/DefaultSynchronizer.h
-	include/devices/DeviceManager.h
-	include/devices/I3DDevice.h
-	include/devices/I3DHandle.h
-	include/devices/IDeviceFactory.h
-	include/devices/IDevice.h
-	include/devices/IHandle.h
-	include/devices/ISynchronizer.h
-	include/devices/NULLDevice.h
-	include/devices/ReadDevice.h
-	include/devices/SoftwareDevice.h
-	include/Exception.h
-	include/file/File.h
-	include/file/FileManager.h
-	include/file/FileWriter.h
-	include/file/IFileInput.h
-	include/file/IFileOutput.h
-	include/file/IWriter.h
-	include/fx/Accumulator.h
-	include/fx/ADSR.h
-	include/fx/ADSRReader.h
-	include/fx/BaseIIRFilterReader.h
-	include/fx/ButterworthCalculator.h
-	include/fx/Butterworth.h
-	include/fx/CallbackIIRFilterReader.h
-	include/fx/Delay.h
-	include/fx/DelayReader.h
-	include/fx/DynamicIIRFilter.h
-	include/fx/DynamicIIRFilterReader.h
-	include/fx/DynamicMusic.h
-	include/fx/Effect.h
-	include/fx/EffectReader.h
-	include/fx/Envelope.h
-	include/fx/Fader.h
-	include/fx/FaderReader.h
-	include/fx/HighpassCalculator.h
-	include/fx/Highpass.h
-	include/fx/IDynamicIIRFilterCalculator.h
-	include/fx/IIRFilter.h
-	include/fx/IIRFilterReader.h
-	include/fx/Limiter.h
-	include/fx/LimiterReader.h
-	include/fx/Loop.h
-	include/fx/LoopReader.h
-	include/fx/LowpassCalculator.h
-	include/fx/Lowpass.h
-	include/fx/Modulator.h
-	include/fx/ModulatorReader.h
-	include/fx/MutableReader.h
-	include/fx/MutableSound.h
-	include/fx/Pitch.h
-	include/fx/PitchReader.h
-	include/fx/PlaybackManager.h
-	include/fx/PlaybackCategory.h
-	include/fx/Reverse.h
-	include/fx/ReverseReader.h
-	include/fx/SoundList.h
-	include/fx/Source.h
-	include/fx/Sum.h
-	include/fx/Threshold.h
-	include/fx/Volume.h
-	include/fx/VolumeReader.h
-	include/fx/VolumeSound.h
-	include/fx/VolumeStorage.h
-	include/generator/Sawtooth.h
-	include/generator/SawtoothReader.h
-	include/generator/Silence.h
-	include/generator/SilenceReader.h
-	include/generator/Sine.h
-	include/generator/SineReader.h
-	include/generator/Square.h
-	include/generator/SquareReader.h
-	include/generator/Triangle.h
-	include/generator/TriangleReader.h
-	include/IReader.h
-	include/ISound.h
-	include/plugin/PluginManager.h
-	include/respec/ChannelMapper.h
-	include/respec/ChannelMapperReader.h
-	include/respec/ConverterFunctions.h
-	include/respec/Converter.h
-	include/respec/ConverterReader.h
-	include/respec/JOSResample.h
-	include/respec/JOSResampleReader.h
-	include/respec/LinearResample.h
-	include/respec/LinearResampleReader.h
-	include/respec/Mixer.h
-	include/respec/ResampleReader.h
-	include/respec/Specification.h
-	include/respec/SpecsChanger.h
-	include/sequence/AnimateableProperty.h
-	include/sequence/Double.h
-	include/sequence/DoubleReader.h
-	include/sequence/PingPong.h
-	include/sequence/SequenceData.h
-	include/sequence/SequenceEntry.h
-	include/sequence/Sequence.h
-	include/sequence/SequenceReader.h
-	include/sequence/Superpose.h
-	include/sequence/SuperposeReader.h
-	include/util/Barrier.h
-	include/util/Buffer.h
-	include/util/BufferReader.h
-	include/util/ILockable.h
-	include/util/Math3D.h
-	include/util/StreamBuffer.h
-	include/util/ThreadPool.h
+  include/devices/DefaultSynchronizer.h
+  include/devices/DeviceManager.h
+  include/devices/I3DDevice.h
+  include/devices/I3DHandle.h
+  include/devices/IDeviceFactory.h
+  include/devices/IDevice.h
+  include/devices/IHandle.h
+  include/devices/ISynchronizer.h
+  include/devices/NULLDevice.h
+  include/devices/ReadDevice.h
+  include/devices/SoftwareDevice.h
+  include/Exception.h
+  include/file/File.h
+  include/file/FileManager.h
+  include/file/FileWriter.h
+  include/file/IFileInput.h
+  include/file/IFileOutput.h
+  include/file/IWriter.h
+  include/fx/Accumulator.h
+  include/fx/ADSR.h
+  include/fx/ADSRReader.h
+  include/fx/BaseIIRFilterReader.h
+  include/fx/ButterworthCalculator.h
+  include/fx/Butterworth.h
+  include/fx/CallbackIIRFilterReader.h
+  include/fx/Delay.h
+  include/fx/DelayReader.h
+  include/fx/DynamicIIRFilter.h
+  include/fx/DynamicIIRFilterReader.h
+  include/fx/DynamicMusic.h
+  include/fx/Effect.h
+  include/fx/EffectReader.h
+  include/fx/Envelope.h
+  include/fx/Fader.h
+  include/fx/FaderReader.h
+  include/fx/HighpassCalculator.h
+  include/fx/Highpass.h
+  include/fx/IDynamicIIRFilterCalculator.h
+  include/fx/IIRFilter.h
+  include/fx/IIRFilterReader.h
+  include/fx/Limiter.h
+  include/fx/LimiterReader.h
+  include/fx/Loop.h
+  include/fx/LoopReader.h
+  include/fx/LowpassCalculator.h
+  include/fx/Lowpass.h
+  include/fx/Modulator.h
+  include/fx/ModulatorReader.h
+  include/fx/MutableReader.h
+  include/fx/MutableSound.h
+  include/fx/Pitch.h
+  include/fx/PitchReader.h
+  include/fx/PlaybackManager.h
+  include/fx/PlaybackCategory.h
+  include/fx/Reverse.h
+  include/fx/ReverseReader.h
+  include/fx/SoundList.h
+  include/fx/Source.h
+  include/fx/Sum.h
+  include/fx/Threshold.h
+  include/fx/Volume.h
+  include/fx/VolumeReader.h
+  include/fx/VolumeSound.h
+  include/fx/VolumeStorage.h
+  include/generator/Sawtooth.h
+  include/generator/SawtoothReader.h
+  include/generator/Silence.h
+  include/generator/SilenceReader.h
+  include/generator/Sine.h
+  include/generator/SineReader.h
+  include/generator/Square.h
+  include/generator/SquareReader.h
+  include/generator/Triangle.h
+  include/generator/TriangleReader.h
+  include/IReader.h
+  include/ISound.h
+  include/plugin/PluginManager.h
+  include/respec/ChannelMapper.h
+  include/respec/ChannelMapperReader.h
+  include/respec/ConverterFunctions.h
+  include/respec/Converter.h
+  include/respec/ConverterReader.h
+  include/respec/JOSResample.h
+  include/respec/JOSResampleReader.h
+  include/respec/LinearResample.h
+  include/respec/LinearResampleReader.h
+  include/respec/Mixer.h
+  include/respec/ResampleReader.h
+  include/respec/Specification.h
+  include/respec/SpecsChanger.h
+  include/sequence/AnimateableProperty.h
+  include/sequence/Double.h
+  include/sequence/DoubleReader.h
+  include/sequence/PingPong.h
+  include/sequence/SequenceData.h
+  include/sequence/SequenceEntry.h
+  include/sequence/Sequence.h
+  include/sequence/SequenceReader.h
+  include/sequence/Superpose.h
+  include/sequence/SuperposeReader.h
+  include/util/Barrier.h
+  include/util/Buffer.h
+  include/util/BufferReader.h
+  include/util/ILockable.h
+  include/util/Math3D.h
+  include/util/StreamBuffer.h
+  include/util/ThreadPool.h
 )
 
 set(HDR ${PRIVATE_HDR} ${PUBLIC_HDR})
@@ -251,15 +251,15 @@ set(HDR ${PRIVATE_HDR} ${PUBLIC_HDR})
 set(INCLUDE ${CMAKE_CURRENT_BINARY_DIR} include)
 
 if(WIN32)
-	set(LIBRARIES)
-	if(AUDASPACE_STANDALONE)
-		set(DLLS)
-		set(LIBRARY_PATH "../lib" CACHE PATH "Path which contains the libraries.")
-		file(GLOB LIBRARY_DIRS ${LIBRARY_PATH}/*)
-		list(APPEND CMAKE_PREFIX_PATH ${LIBRARY_DIRS})
-	endif()
+  set(LIBRARIES)
+  if(AUDASPACE_STANDALONE)
+    set(DLLS)
+    set(LIBRARY_PATH "../lib" CACHE PATH "Path which contains the libraries.")
+    file(GLOB LIBRARY_DIRS ${LIBRARY_PATH}/*)
+    list(APPEND CMAKE_PREFIX_PATH ${LIBRARY_DIRS})
+  endif()
 else()
-	set(LIBRARIES ${CMAKE_DL_LIBS} -lpthread)
+  set(LIBRARIES ${CMAKE_DL_LIBS} -lpthread)
 endif()
 
 set(STATIC_PLUGINS "")
@@ -267,418 +267,418 @@ set(STATIC_PLUGINS "")
 # dependencies
 
 if(AUDASPACE_STANDALONE)
-	set(PACKAGE_OPTION QUIET)
-	list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/")
+  set(PACKAGE_OPTION QUIET)
+  list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/")
 
-	option(BUILD_DEMOS "Build and install demos" TRUE)
+  option(BUILD_DEMOS "Build and install demos" TRUE)
 
-	option(SHARED_LIBRARY "Build Shared Library" TRUE)
+  option(SHARED_LIBRARY "Build Shared Library" TRUE)
 
-	option(WITH_C "Build C Module" TRUE)
-	option(WITH_DOCS "Build C++ HTML Documentation with Doxygen" TRUE)
-	option(WITH_FFMPEG "Build With FFMPEG" TRUE)
-	option(WITH_FFTW "Build With FFTW" TRUE)
-	option(WITH_JACK "Build With Plugin" TRUE)
-	option(WITH_LIBSNDFILE "Build With LibSndFile" TRUE)
-	option(WITH_OPENAL "Build With OpenAL" TRUE)
-	option(WITH_PYTHON "Build With Python Library" TRUE)
-	option(WITH_SDL "Build With SDL" TRUE)
-	option(WITH_STRICT_DEPENDENCIES "Error and abort instead of warning if a library is not found." FALSE)
+  option(WITH_C "Build C Module" TRUE)
+  option(WITH_DOCS "Build C++ HTML Documentation with Doxygen" TRUE)
+  option(WITH_FFMPEG "Build With FFMPEG" TRUE)
+  option(WITH_FFTW "Build With FFTW" TRUE)
+  option(WITH_JACK "Build With Plugin" TRUE)
+  option(WITH_LIBSNDFILE "Build With LibSndFile" TRUE)
+  option(WITH_OPENAL "Build With OpenAL" TRUE)
+  option(WITH_PYTHON "Build With Python Library" TRUE)
+  option(WITH_SDL "Build With SDL" TRUE)
+  option(WITH_STRICT_DEPENDENCIES "Error and abort instead of warning if a library is not found." FALSE)
 
-	if(WITH_STRICT_DEPENDENCIES)
-		set(PACKAGE_OPTION REQUIRED)
-	endif()
+  if(WITH_STRICT_DEPENDENCIES)
+    set(PACKAGE_OPTION REQUIRED)
+  endif()
 endif()
 
 if(WIN32)
-	set(DEFAULT_PLUGIN_PATH "." CACHE STRING "Default plugin installation and loading path.")
-	set(DOCUMENTATION_INSTALL_PATH "doc" CACHE PATH "Path where the documentation is installed.")
+  set(DEFAULT_PLUGIN_PATH "." CACHE STRING "Default plugin installation and loading path.")
+  set(DOCUMENTATION_INSTALL_PATH "doc" CACHE PATH "Path where the documentation is installed.")
 else()
-	set(DEFAULT_PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/share/audaspace/plugins" CACHE STRING "Default plugin installation and loading path.")
-	set(DOCUMENTATION_INSTALL_PATH "share/doc/audaspace" CACHE PATH "Path where the documentation is installed.")
+  set(DEFAULT_PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/share/audaspace/plugins" CACHE STRING "Default plugin installation and loading path.")
+  set(DOCUMENTATION_INSTALL_PATH "share/doc/audaspace" CACHE PATH "Path where the documentation is installed.")
 endif()
 
 if(AUDASPACE_STANDALONE)
-	cmake_dependent_option(SEPARATE_C "Build C Binding as separate library" TRUE "WITH_C" FALSE)
-	cmake_dependent_option(PLUGIN_FFMPEG "Build FFMPEG Plugin" TRUE "WITH_FFMPEG;SHARED_LIBRARY" FALSE)
-	cmake_dependent_option(PLUGIN_JACK "Build JACK Plugin" TRUE "WITH_JACK;SHARED_LIBRARY" FALSE)
-	cmake_dependent_option(PLUGIN_LIBSNDFILE "Build LibSndFile Plugin" TRUE "WITH_LIBSNDFILE;SHARED_LIBRARY" FALSE)
-	cmake_dependent_option(PLUGIN_OPENAL "Build OpenAL Plugin" TRUE "WITH_OPENAL;SHARED_LIBRARY" FALSE)
-	cmake_dependent_option(PLUGIN_SDL "Build SDL Plugin" TRUE "WITH_SDL;SHARED_LIBRARY" FALSE)
-	cmake_dependent_option(WITH_PYTHON_MODULE "Build Python Module" TRUE "WITH_PYTHON" FALSE)
-	cmake_dependent_option(USE_SDL2 "Use SDL2 instead of 1 if available" TRUE "WITH_SDL" FALSE)
-	cmake_dependent_option(DYNLOAD_JACK "Dynamically load JACK" FALSE "WITH_JACK" FALSE)
-	cmake_dependent_option(WITH_BINDING_DOCS "Build C/Python HTML Documentation with Sphinx" TRUE "WITH_PYTHON_MODULE" FALSE)
+  cmake_dependent_option(SEPARATE_C "Build C Binding as separate library" TRUE "WITH_C" FALSE)
+  cmake_dependent_option(PLUGIN_FFMPEG "Build FFMPEG Plugin" TRUE "WITH_FFMPEG;SHARED_LIBRARY" FALSE)
+  cmake_dependent_option(PLUGIN_JACK "Build JACK Plugin" TRUE "WITH_JACK;SHARED_LIBRARY" FALSE)
+  cmake_dependent_option(PLUGIN_LIBSNDFILE "Build LibSndFile Plugin" TRUE "WITH_LIBSNDFILE;SHARED_LIBRARY" FALSE)
+  cmake_dependent_option(PLUGIN_OPENAL "Build OpenAL Plugin" TRUE "WITH_OPENAL;SHARED_LIBRARY" FALSE)
+  cmake_dependent_option(PLUGIN_SDL "Build SDL Plugin" TRUE "WITH_SDL;SHARED_LIBRARY" FALSE)
+  cmake_dependent_option(WITH_PYTHON_MODULE "Build Python Module" TRUE "WITH_PYTHON" FALSE)
+  cmake_dependent_option(USE_SDL2 "Use SDL2 instead of 1 if available" TRUE "WITH_SDL" FALSE)
+  cmake_dependent_option(DYNLOAD_JACK "Dynamically load JACK" FALSE "WITH_JACK" FALSE)
+  cmake_dependent_option(WITH_BINDING_DOCS "Build C/Python HTML Documentation with Sphinx" TRUE "WITH_PYTHON_MODULE" FALSE)
 endif()
 
 # compiler options
 
 if(AUDASPACE_STANDALONE)
-	if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
-		add_definitions(-std=c++11)
-		list(APPEND CMAKE_C_COMPILER_FLAGS "-fvisibility=hidden")
-		list(APPEND CMAKE_CXX_COMPILER_FLAGS "-fvisibility=hidden")
-	endif()
+  if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
+    add_definitions(-std=c++11)
+    list(APPEND CMAKE_C_COMPILER_FLAGS "-fvisibility=hidden")
+    list(APPEND CMAKE_CXX_COMPILER_FLAGS "-fvisibility=hidden")
+  endif()
 
-	if(MSVC)
-		list(APPEND CMAKE_C_FLAGS_DEBUG "/Zi /Od")
-		list(APPEND CMAKE_CXX_FLAGS_DEBUG "/Zi /Od")
-		list(APPEND CMAKE_SHARED_LINKER_FLAGS_DEBUG "/DEBUG")
-		list(APPEND CMAKE_STATIC_LINKER_FLAGS_DEBUG "/DEBUG")
-		list(APPEND CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG")
+  if(MSVC)
+    list(APPEND CMAKE_C_FLAGS_DEBUG "/Zi /Od")
+    list(APPEND CMAKE_CXX_FLAGS_DEBUG "/Zi /Od")
+    list(APPEND CMAKE_SHARED_LINKER_FLAGS_DEBUG "/DEBUG")
+    list(APPEND CMAKE_STATIC_LINKER_FLAGS_DEBUG "/DEBUG")
+    list(APPEND CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG")
 
-		if(SHARED_LIBRARY)
-			include(GenerateExportHeader)
-		endif()
-	endif()
+    if(SHARED_LIBRARY)
+      include(GenerateExportHeader)
+    endif()
+  endif()
 
-	if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET)
-		set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
-	endif()
+  if(APPLE AND NOT CMAKE_OSX_DEPLOYMENT_TARGET)
+    set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
+  endif()
 endif()
 
 if(MSVC)
-	add_definitions(
-		/D_USE_MATH_DEFINES
-		/EHsc
-		/DNOMINMAX
-		/D_STDINT_H
-	)
+  add_definitions(
+    /D_USE_MATH_DEFINES
+    /EHsc
+    /DNOMINMAX
+    /D_STDINT_H
+  )
 endif()
 
 # platform specific options
 
 if(MSYS OR MINGW)
-	add_definitions(-D_USE_MATH_DEFINES)
+  add_definitions(-D_USE_MATH_DEFINES)
 endif()
 
 # C
 if(WITH_C)
-	set(C_SRC
-		bindings/C/AUD_ThreadPool.cpp
-		bindings/C/AUD_Source.cpp
-		bindings/C/AUD_Device.cpp
-		bindings/C/AUD_DynamicMusic.cpp
-		bindings/C/AUD_Handle.cpp
-		bindings/C/AUD_PlaybackManager.cpp
-		bindings/C/AUD_Sequence.cpp
-		bindings/C/AUD_Sound.cpp
-		bindings/C/AUD_Special.cpp
-	)
-	set(C_HDR
-		bindings/C/AUD_ThreadPool.h
-		bindings/C/AUD_Source.h
-		bindings/C/AUD_Device.h
-		bindings/C/AUD_DynamicMusic.h
-		bindings/C/AUD_Handle.h
-		bindings/C/AUD_PlaybackManager.h
-		bindings/C/AUD_Sequence.h
-		bindings/C/AUD_Sound.h
-		bindings/C/AUD_Special.h
-		bindings/C/AUD_Types.h
-	)
+  set(C_SRC
+    bindings/C/AUD_ThreadPool.cpp
+    bindings/C/AUD_Source.cpp
+    bindings/C/AUD_Device.cpp
+    bindings/C/AUD_DynamicMusic.cpp
+    bindings/C/AUD_Handle.cpp
+    bindings/C/AUD_PlaybackManager.cpp
+    bindings/C/AUD_Sequence.cpp
+    bindings/C/AUD_Sound.cpp
+    bindings/C/AUD_Special.cpp
+  )
+  set(C_HDR
+    bindings/C/AUD_ThreadPool.h
+    bindings/C/AUD_Source.h
+    bindings/C/AUD_Device.h
+    bindings/C/AUD_DynamicMusic.h
+    bindings/C/AUD_Handle.h
+    bindings/C/AUD_PlaybackManager.h
+    bindings/C/AUD_Sequence.h
+    bindings/C/AUD_Sound.h
+    bindings/C/AUD_Special.h
+    bindings/C/AUD_Types.h
+  )
 
 if(WITH_FFTW)
-	list(APPEND C_SRC
-			bindings/C/AUD_HRTF.cpp
-			bindings/C/AUD_ImpulseResponse.cpp
-			)
+  list(APPEND C_SRC
+      bindings/C/AUD_HRTF.cpp
+      bindings/C/AUD_ImpulseResponse.cpp
+      )
 
-		list(APPEND C_HDR
-			bindings/C/AUD_HRTF.h
-			bindings/C/AUD_ImpulseResponse.h
-			)
-	endif()
+    list(APPEND C_HDR
+      bindings/C/AUD_HRTF.h
+      bindings/C/AUD_ImpulseResponse.h
+      )
+  endif()
 
-	if(NOT SEPARATE_C)
-		list(APPEND SRC ${C_SRC})
-		list(APPEND HDR ${C_HDR})
-	else()
-		set(AUDASPACE_C_LIBRARY -laudaspace-c)
-	endif()
+  if(NOT SEPARATE_C)
+    list(APPEND SRC ${C_SRC})
+    list(APPEND HDR ${C_HDR})
+  else()
+    set(AUDASPACE_C_LIBRARY -laudaspace-c)
+  endif()
 endif()
 
 # FFMPEG
 if(WITH_FFMPEG)
-	if(AUDASPACE_STANDALONE)
-		find_package(FFMPEG ${PACKAGE_OPTION})
-	endif()
-
-	if(FFMPEG_FOUND)
-		set(FFMPEG_SRC
-			plugins/ffmpeg/FFMPEG.cpp
-			plugins/ffmpeg/FFMPEGReader.cpp
-			plugins/ffmpeg/FFMPEGWriter.cpp
-		)
-		set(FFMPEG_HDR
-			plugins/ffmpeg/FFMPEG.h
-			plugins/ffmpeg/FFMPEGReader.h
-			plugins/ffmpeg/FFMPEGWriter.h
-		)
-
-		if(NOT PLUGIN_FFMPEG)
-			list(APPEND INCLUDE ${FFMPEG_INCLUDE_DIRS})
-			list(APPEND LIBRARIES ${FFMPEG_LIBRARIES})
-			list(APPEND SRC ${FFMPEG_SRC})
-			list(APPEND HDR ${FFMPEG_HDR})
-			list(APPEND STATIC_PLUGINS FFMPEG)
-		endif()
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB FFMPEG_DLLS ${LIBRARY_PATH}/ffmpeg/bin/*.dll)
-			list(APPEND DLLS ${FFMPEG_DLLS})
-		endif()
-	else()
-		set(WITH_FFMPEG FALSE CACHE BOOL "Build With FFMPEG" FORCE)
-		message(WARNING "FFMPEG not found, plugin will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(FFMPEG ${PACKAGE_OPTION})
+  endif()
+
+  if(FFMPEG_FOUND)
+    set(FFMPEG_SRC
+      plugins/ffmpeg/FFMPEG.cpp
+      plugins/ffmpeg/FFMPEGReader.cpp
+      plugins/ffmpeg/FFMPEGWriter.cpp
+    )
+    set(FFMPEG_HDR
+      plugins/ffmpeg/FFMPEG.h
+      plugins/ffmpeg/FFMPEGReader.h
+      plugins/ffmpeg/FFMPEGWriter.h
+    )
+
+    if(NOT PLUGIN_FFMPEG)
+      list(APPEND INCLUDE ${FFMPEG_INCLUDE_DIRS})
+      list(APPEND LIBRARIES ${FFMPEG_LIBRARIES})
+      list(APPEND SRC ${FFMPEG_SRC})
+      list(APPEND HDR ${FFMPEG_HDR})
+      list(APPEND STATIC_PLUGINS FFMPEG)
+    endif()
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB FFMPEG_DLLS ${LIBRARY_PATH}/ffmpeg/bin/*.dll)
+      list(APPEND DLLS ${FFMPEG_DLLS})
+    endif()
+  else()
+    set(WITH_FFMPEG FALSE CACHE BOOL "Build With FFMPEG" FORCE)
+    message(WARNING "FFMPEG not found, plugin will not be built.")
+  endif()
 endif()
 
 # FFTW
 if(WITH_FFTW)
-	if(AUDASPACE_STANDALONE)
-		find_package(FFTW ${PACKAGE_OPTION})
-	endif()
-
-	if(FFTW_FOUND)
-		set(FFTW_SRC
-			src/fx/BinauralSound.cpp
-			src/fx/BinauralReader.cpp
-			src/fx/Convolver.cpp
-			src/fx/ConvolverReader.cpp
-			src/fx/ConvolverSound.cpp
-			src/fx/FFTConvolver.cpp
-			src/fx/HRTF.cpp
-			src/fx/ImpulseResponse.cpp
-			src/util/FFTPlan.cpp
-		)
-	set(FFTW_HDR
-		include/fx/BinauralSound.h
-			include/fx/BinauralReader.h
-			include/fx/Convolver.h
-			include/fx/ConvolverReader.h
-			include/fx/ConvolverSound.h
-			include/fx/FFTConvolver.h
-			include/fx/HRTF.h
-			include/fx/HRTFLoader.h
-			include/fx/ImpulseResponse.h
-			include/util/FFTPlan.h
-		)
-
-		add_definitions(-DWITH_CONVOLUTION)
-
-		list(APPEND INCLUDE ${FFTW_INCLUDE_DIR})
-		list(APPEND LIBRARIES ${FFTW_LIBRARY})
-
-		list(APPEND SRC ${FFTW_SRC})
-		list(APPEND HDR ${FFTW_HDR})
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB FFTW_DLLS ${LIBRARY_PATH}/fftw/bin/*.dll)
-			list(APPEND DLLS ${FFTW_DLLS})
-		endif()
-	else()
-		set(WITH_FFTW FALSE CACHE BOOL "Build With FFTW" FORCE)
-		message(WARNING "FFTW not found, convolution functionality will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(FFTW ${PACKAGE_OPTION})
+  endif()
+
+  if(FFTW_FOUND)
+    set(FFTW_SRC
+      src/fx/BinauralSound.cpp
+      src/fx/BinauralReader.cpp
+      src/fx/Convolver.cpp
+      src/fx/ConvolverReader.cpp
+      src/fx/ConvolverSound.cpp
+      src/fx/FFTConvolver.cpp
+      src/fx/HRTF.cpp
+      src/fx/ImpulseResponse.cpp
+      src/util/FFTPlan.cpp
+    )
+  set(FFTW_HDR
+    include/fx/BinauralSound.h
+      include/fx/BinauralReader.h
+      include/fx/Convolver.h
+      include/fx/ConvolverReader.h
+      include/fx/ConvolverSound.h
+      include/fx/FFTConvolver.h
+      include/fx/HRTF.h
+      include/fx/HRTFLoader.h
+      include/fx/ImpulseResponse.h
+      include/util/FFTPlan.h
+    )
+
+    add_definitions(-DWITH_CONVOLUTION)
+
+    list(APPEND INCLUDE ${FFTW_INCLUDE_DIR})
+    list(APPEND LIBRARIES ${FFTW_LIBRARY})
+
+    list(APPEND SRC ${FFTW_SRC})
+    list(APPEND HDR ${FFTW_HDR})
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB FFTW_DLLS ${LIBRARY_PATH}/fftw/bin/*.dll)
+      list(APPEND DLLS ${FFTW_DLLS})
+    endif()
+  else()
+    set(WITH_FFTW FALSE CACHE BOOL "Build With FFTW" FORCE)
+    message(WARNING "FFTW not found, convolution functionality will not be built.")
+  endif()
 endif()
 
 # JACK
 if(WITH_JACK)
-	if(AUDASPACE_STANDALONE)
-		find_package(Jack ${PACKAGE_OPTION})
-	endif()
-
-	if(JACK_FOUND)
-		set(JACK_SRC
-			plugins/jack/JackDevice.cpp
-			plugins/jack/JackSynchronizer.cpp
-			plugins/jack/JackLibrary.cpp
-		)
-		set(JACK_HDR
-			plugins/jack/JackDevice.h
-			plugins/jack/JackSynchronizer.h
-			plugins/jack/JackLibrary.h
-			plugins/jack/JackSymbols.h
-		)
-
-	if(DYNLOAD_JACK)
-			add_definitions(-DDYNLOAD_JACK)
-		endif()
-
-		if(NOT PLUGIN_JACK)
-			list(APPEND INCLUDE ${JACK_INCLUDE_DIRS})
-			if(NOT DYNLOAD_JACK)
-				list(APPEND LIBRARIES ${JACK_LIBRARIES})
-			endif()
-			list(APPEND SRC ${JACK_SRC})
-			list(APPEND HDR ${JACK_HDR})
-			list(APPEND STATIC_PLUGINS JackDevice)
-		endif()
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB JACK_DLLS ${LIBRARY_PATH}/jack/bin/*.dll)
-			list(APPEND DLLS ${JACK_DLLS})
-		endif()
-	else()
-		set(WITH_JACK FALSE CACHE BOOL "Build With JACK" FORCE)
-		message(WARNING "JACK not found, plugin will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(Jack ${PACKAGE_OPTION})
+  endif()
+
+  if(JACK_FOUND)
+    set(JACK_SRC
+      plugins/jack/JackDevice.cpp
+      plugins/jack/JackSynchronizer.cpp
+      plugins/jack/JackLibrary.cpp
+    )
+    set(JACK_HDR
+      plugins/jack/JackDevice.h
+      plugins/jack/JackSynchronizer.h
+      plugins/jack/JackLibrary.h
+      plugins/jack/JackSymbols.h
+    )
+
+  if(DYNLOAD_JACK)
+      add_definitions(-DDYNLOAD_JACK)
+    endif()
+
+    if(NOT PLUGIN_JACK)
+      list(APPEND INCLUDE ${JACK_INCLUDE_DIRS})
+      if(NOT DYNLOAD_JACK)
+        list(APPEND LIBRARIES ${JACK_LIBRARIES})
+      endif()
+      list(APPEND SRC ${JACK_SRC})
+      list(APPEND HDR ${JACK_HDR})
+      list(APPEND STATIC_PLUGINS JackDevice)
+    endif()
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB JACK_DLLS ${LIBRARY_PATH}/jack/bin/*.dll)
+      list(APPEND DLLS ${JACK_DLLS})
+    endif()
+  else()
+    set(WITH_JACK FALSE CACHE BOOL "Build With JACK" FORCE)
+    message(WARNING "JACK not found, plugin will not be built.")
+  endif()
 endif()
 
 # LibSndFile
 if(WITH_LIBSNDFILE)
-	if(AUDASPACE_STANDALONE)
-		find_package(LibSndFile ${PACKAGE_OPTION})
-	endif()
-
-	if(LIBSNDFILE_FOUND)
-		set(LIBSNDFILE_SRC
-			plugins/libsndfile/SndFile.cpp
-			plugins/libsndfile/SndFileReader.cpp
-			plugins/libsndfile/SndFileWriter.cpp
-		)
-		set(LIBSNDFILE_HDR
-			plugins/libsndfile/SndFile.h
-			plugins/libsndfile/SndFileReader.h
-			plugins/libsndfile/SndFileWriter.h
-		)
-
-		if(NOT PLUGIN_LIBSNDFILE)
-			list(APPEND INCLUDE ${LIBSNDFILE_INCLUDE_DIRS})
-			list(APPEND LIBRARIES ${LIBSNDFILE_LIBRARIES})
-			list(APPEND SRC ${LIBSNDFILE_SRC})
-			list(APPEND HDR ${LIBSNDFILE_HDR})
-			list(APPEND STATIC_PLUGINS SndFile)
-		endif()
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB LIBSNDFILE_DLLS ${LIBRARY_PATH}/libsndfile/bin/*.dll)
-			list(APPEND DLLS ${LIBSNDFILE_DLLS})
-		endif()
-	else()
-		set(WITH_LIBSNDFILE FALSE CACHE BOOL "Build With LibSndFile" FORCE)
-		message(WARNING "LibSndFile not found, plugin will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(LibSndFile ${PACKAGE_OPTION})
+  endif()
+
+  if(LIBSNDFILE_FOUND)
+    set(LIBSNDFILE_SRC
+      plugins/libsndfile/SndFile.cpp
+      plugins/libsndfile/SndFileReader.cpp
+      plugins/libsndfile/SndFileWriter.cpp
+    )
+    set(LIBSNDFILE_HDR
+      plugins/libsndfile/SndFile.h
+      plugins/libsndfile/SndFileReader.h
+      plugins/libsndfile/SndFileWriter.h
+    )
+
+    if(NOT PLUGIN_LIBSNDFILE)
+      list(APPEND INCLUDE ${LIBSNDFILE_INCLUDE_DIRS})
+      list(APPEND LIBRARIES ${LIBSNDFILE_LIBRARIES})
+      list(APPEND SRC ${LIBSNDFILE_SRC})
+      list(APPEND HDR ${LIBSNDFILE_HDR})
+      list(APPEND STATIC_PLUGINS SndFile)
+    endif()
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB LIBSNDFILE_DLLS ${LIBRARY_PATH}/libsndfile/bin/*.dll)
+      list(APPEND DLLS ${LIBSNDFILE_DLLS})
+    endif()
+  else()
+    set(WITH_LIBSNDFILE FALSE CACHE BOOL "Build With LibSndFile" FORCE)
+    message(WARNING "LibSndFile not found, plugin will not be built.")
+  endif()
 endif()
 
 # OpenAL
 if(WITH_OPENAL)
-	if(AUDASPACE_STANDALONE)
-		find_package(OpenAL ${PACKAGE_OPTION})
-	endif()
-
-	if(OPENAL_FOUND)
-		set(OPENAL_SRC
-			plugins/openal/OpenALDevice.cpp
-			plugins/openal/OpenALReader.cpp
-		)
-		set(OPENAL_HDR
-			plugins/openal/OpenALDevice.h
-			plugins/openal/OpenALReader.h
-		)
-
-		if(NOT PLUGIN_OPENAL)
-			list(APPEND INCLUDE ${OPENAL_INCLUDE_DIR})
-			list(APPEND LIBRARIES ${OPENAL_LIBRARY})
-			list(APPEND SRC ${OPENAL_SRC})
-			list(APPEND HDR ${OPENAL_HDR})
-			list(APPEND STATIC_PLUGINS OpenALDevice)
-		endif()
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB OPENAL_DLLS ${LIBRARY_PATH}/OpenAL/bin/*.dll)
-			list(APPEND DLLS ${OPENAL_DLLS})
-		endif()
-	else()
-		set(WITH_OPENAL FALSE CACHE BOOL "Build With OpenAL" FORCE)
-		message(WARNING "OpenAL not found, plugin will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(OpenAL ${PACKAGE_OPTION})
+  endif()
+
+  if(OPENAL_FOUND)
+    set(OPENAL_SRC
+      plugins/openal/OpenALDevice.cpp
+      plugins/openal/OpenALReader.cpp
+    )
+    set(OPENAL_HDR
+      plugins/openal/OpenALDevice.h
+      plugins/openal/OpenALReader.h
+    )
+
+    if(NOT PLUGIN_OPENAL)
+      list(APPEND INCLUDE ${OPENAL_INCLUDE_DIR})
+      list(APPEND LIBRARIES ${OPENAL_LIBRARY})
+      list(APPEND SRC ${OPENAL_SRC})
+      list(APPEND HDR ${OPENAL_HDR})
+      list(APPEND STATIC_PLUGINS OpenALDevice)
+    endif()
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB OPENAL_DLLS ${LIBRARY_PATH}/OpenAL/bin/*.dll)
+      list(APPEND DLLS ${OPENAL_DLLS})
+    endif()
+  else()
+    set(WITH_OPENAL FALSE CACHE BOOL "Build With OpenAL" FORCE)
+    message(WARNING "OpenAL not found, plugin will not be built.")
+  endif()
 endif()
 
 # Python
 if(WITH_PYTHON)
-	if(AUDASPACE_STANDALONE)
-		find_package(PythonLibs 3.2 ${PACKAGE_OPTION})
-		find_package(NumPy ${PACKAGE_OPTION})
-	endif()
+  if(AUDASPACE_STANDALONE)
+    find_package(PythonLibs 3.2 ${PACKAGE_OPTION})
+    find_package(NumPy ${PACKAGE_OPTION})
+  endif()
 
-	if(PYTHONLIBS_FOUND AND NUMPY_FOUND)
-		list(APPEND INCLUDE ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS})
+  if(PYTHONLIBS_FOUND AND NUMPY_FOUND)
+    list(APPEND INCLUDE ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS})
 
-		if(WITH_PYTHON_MODULE)
-			find_package(PythonInterp 3.2 ${PACKAGE_OPTION})
+    if(WITH_PYTHON_MODULE)
+      find_package(PythonInterp 3.2 ${PACKAGE_OPTION})
 
-			if(NOT PYTHONINTERP_FOUND)
-				set(WITH_PYTHON_MODULE FALSE)
-				message(WARNING "Python interpreter not found, module will not be built.")
-			endif()
-		endif()
+      if(NOT PYTHONINTERP_FOUND)
+        set(WITH_PYTHON_MODULE FALSE)
+        message(WARNING "Python interpreter not found, module will not be built.")
+      endif()
+    endif()
 
-		set(AUDASPACE_PY_LIBRARY -laudaspace-py)
+    set(AUDASPACE_PY_LIBRARY -laudaspace-py)
 
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB PYTHON_DLLS ${LIBRARY_PATH}/Python/bin/*.dll)
-			list(APPEND DLLS ${PYTHON_DLLS})
-		endif()
-	else()
-		set(WITH_PYTHON FALSE CACHE BOOL "Build With Python Library" FORCE)
-		message(WARNING "Python libraries not found, language binding will not be built.")
-	endif()
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB PYTHON_DLLS ${LIBRARY_PATH}/Python/bin/*.dll)
+      list(APPEND DLLS ${PYTHON_DLLS})
+    endif()
+  else()
+    set(WITH_PYTHON FALSE CACHE BOOL "Build With Python Library" FORCE)
+    message(WARNING "Python libraries not found, language binding will not be built.")
+  endif()
 endif()
 
 # SDL
 if(WITH_SDL)
-	if(AUDASPACE_STANDALONE)
-		if(USE_SDL2)
-			find_package(SDL2)
-			if(SDL2_FOUND)
-				set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIR})
-				set(SDL_LIBRARY ${SDL2_LIBRARY})
-				set(SDL_FOUND TRUE)
-			else()
-				find_package(SDL ${PACKAGE_OPTION})
-			endif()
-		else()
-			find_package(SDL ${PACKAGE_OPTION})
-		endif()
-	endif()
-
-	if(SDL_FOUND)
-		set(SDL_SRC
-			plugins/sdl/SDLDevice.cpp
-		)
-		set(SDL_HDR
-			plugins/sdl/SDLDevice.h
-		)
-
-		if(NOT PLUGIN_SDL)
-			list(APPEND INCLUDE ${SDL_INCLUDE_DIR})
-			list(APPEND LIBRARIES ${SDL_LIBRARY})
-			list(APPEND SRC ${SDL_SRC})
-			list(APPEND HDR ${SDL_HDR})
-			list(APPEND STATIC_PLUGINS SDLDevice)
-		endif()
-
-		if(WIN32 AND AUDASPACE_STANDALONE)
-			file(GLOB SDL_DLLS ${LIBRARY_PATH}/sdl/bin/*.dll)
-			list(APPEND DLLS ${SDL_DLLS})
-		endif()
-	else()
-		set(WITH_SDL FALSE CACHE BOOL "Build With SDL" FORCE)
-		message(WARNING "SDL not found, plugin will not be built.")
-	endif()
+  if(AUDASPACE_STANDALONE)
+    if(USE_SDL2)
+      find_package(SDL2)
+      if(SDL2_FOUND)
+        set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIR})
+        set(SDL_LIBRARY ${SDL2_LIBRARY})
+        set(SDL_FOUND TRUE)
+      else()
+        find_package(SDL ${PACKAGE_OPTION})
+      endif()
+    else()
+      find_package(SDL ${PACKAGE_OPTION})
+    endif()
+  endif()
+
+  if(SDL_FOUND)
+    set(SDL_SRC
+      plugins/sdl/SDLDevice.cpp
+    )
+    set(SDL_HDR
+      plugins/sdl/SDLDevice.h
+    )
+
+    if(NOT PLUGIN_SDL)
+      list(APPEND INCLUDE ${SDL_INCLUDE_DIR})
+      list(APPEND LIBRARIES ${SDL_LIBRARY})
+      list(APPEND SRC ${SDL_SRC})
+      list(APPEND HDR ${SDL_HDR})
+      list(APPEND STATIC_PLUGINS SDLDevice)
+    endif()
+
+    if(WIN32 AND AUDASPACE_STANDALONE)
+      file(GLOB SDL_DLLS ${LIBRARY_PATH}/sdl/bin/*.dll)
+      list(APPEND DLLS ${SDL_DLLS})
+    endif()
+  else()
+    set(WITH_SDL FALSE CACHE BOOL "Build With SDL" FORCE)
+    message(WARNING "SDL not found, plugin will not be built.")
+  endif()
 endif()
 
 # library configuration
 
 if(SHARED_LIBRARY)
-	set(AUD_LIBRARY_TYPE AUD_SHARED_LIBRARY)
-	set(LIBRARY_TYPE SHARED)
-	add_definitions(-DAUD_BUILD_SHARED_LIBRARY)
+  set(AUD_LIBRARY_TYPE AUD_SHARED_LIBRARY)
+  set(LIBRARY_TYPE SHARED)
+  add_definitions(-DAUD_BUILD_SHARED_LIBRARY)
 else()
-	set(AUD_LIBRARY_TYPE AUD_STATIC_LIBRARY)
-	set(LIBRARY_TYPE STATIC)
+  set(AUD_LIBRARY_TYPE AUD_STATIC_LIBRARY)
+  set(LIBRARY_TYPE STATIC)
 endif()
 
 # file configuration
@@ -691,28 +691,28 @@ set(STATIC_PLUGIN_CLASSES "")
 set(STATIC_PLUGIN_REGISTERS "")
 
 foreach(PLUGIN ${STATIC_PLUGINS})
-	list(APPEND STATIC_PLUGIN_CLASSES "STATIC_PLUGIN_CLASS(" ${PLUGIN} ")\n")
-	list(APPEND STATIC_PLUGIN_REGISTERS "\tSTATIC_PLUGIN_REGISTER(" ${PLUGIN} ")\n")
+  list(APPEND STATIC_PLUGIN_CLASSES "STATIC_PLUGIN_CLASS(" ${PLUGIN} ")\n")
+  list(APPEND STATIC_PLUGIN_REGISTERS "\tSTATIC_PLUGIN_REGISTER(" ${PLUGIN} ")\n")
 endforeach()
 
 string(CONCAT STATIC_PLUGIN_CLASSES ${STATIC_PLUGIN_CLASSES})
 string(CONCAT STATIC_PLUGIN_REGISTERS ${STATIC_PLUGIN_REGISTERS})
 
 if(WIN32)
-	configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerWindows.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
-	if(WITH_FFTW)
-		configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderWindows.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
-	endif()
+  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerWindows.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
+  if(WITH_FFTW)
+    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderWindows.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
+  endif()
 else()
-	configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerUnix.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
-	if(WITH_FFTW)
-		configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderUnix.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
-	endif()
+  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/plugin/PluginManagerUnix.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp ESCAPE_QUOTES @ONLY)
+  if(WITH_FFTW)
+    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fx/HRTFLoaderUnix.cpp ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp COPYONLY)
+  endif()
 endif()
 
 list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/PluginManager.cpp)
 if(WITH_FFTW)
-	list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp)
+  list(APPEND SRC ${CMAKE_CURRENT_BINARY_DIR}/HRTFLoader.cpp)
 endif()
 
 # directories
@@ -723,9 +723,9 @@ link_directories()
 # install configuration
 
 if(WIN32)
-	set(BIN_DESTINATION ".")
+  set(BIN_DESTINATION ".")
 else()
-	set(BIN_DESTINATION "bin")
+  set(BIN_DESTINATION "bin")
 endif()
 
 set(LIB_DESTINATION "lib${LIB_SUFFIX}")
@@ -737,254 +737,254 @@ target_link_libraries(audaspace ${LIBRARIES})
 set_target_properties(audaspace PROPERTIES SOVERSION ${AUDASPACE_VERSION})
 
 if(AUDASPACE_STANDALONE)
-	install(TARGETS audaspace
-		RUNTIME DESTINATION ${BIN_DESTINATION}
-		LIBRARY DESTINATION ${LIB_DESTINATION}
-		ARCHIVE DESTINATION ${LIB_DESTINATION}
-	)
+  install(TARGETS audaspace
+    RUNTIME DESTINATION ${BIN_DESTINATION}
+    LIBRARY DESTINATION ${LIB_DESTINATION}
+    ARCHIVE DESTINATION ${LIB_DESTINATION}
+  )
 
-	install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/audaspace)
-	install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Audaspace.h DESTINATION include/audaspace)
+  install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/audaspace)
+  install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Audaspace.h DESTINATION include/audaspace)
 
-	configure_file(${CMAKE_CURRENT_SOURCE_DIR}/packages/pkgconfig/audaspace.pc.in ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc @ONLY)
+  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/packages/pkgconfig/audaspace.pc.in ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc @ONLY)
 
-	if(NOT WIN32 AND NOT APPLE)
-		install(FILES ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig")
-	endif()
+  if(NOT WIN32 AND NOT APPLE)
+    install(FILES ${CMAKE_CURRENT_BINARY_DIR}/audaspace.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig")
+  endif()
 endif()
 
 # plugins
 
 if(WITH_FFMPEG AND PLUGIN_FFMPEG)
-	add_definitions(-DFFMPEG_PLUGIN)
-	include_directories(${INCLUDE} ${FFMPEG_INCLUDE_DIRS})
-	add_library(audffmpeg SHARED ${FFMPEG_SRC} ${FFMPEG_HDR} ${HDR})
-	target_link_libraries(audffmpeg audaspace ${FFMPEG_LIBRARIES})
-	set_target_properties(audffmpeg PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-	install(TARGETS audffmpeg DESTINATION ${DEFAULT_PLUGIN_PATH})
+  add_definitions(-DFFMPEG_PLUGIN)
+  include_directories(${INCLUDE} ${FFMPEG_INCLUDE_DIRS})
+  add_library(audffmpeg SHARED ${FFMPEG_SRC} ${FFMPEG_HDR} ${HDR})
+  target_link_libraries(audffmpeg audaspace ${FFMPEG_LIBRARIES})
+  set_target_properties(audffmpeg PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+  install(TARGETS audffmpeg DESTINATION ${DEFAULT_PLUGIN_PATH})
 endif()
 
 if(WITH_JACK AND PLUGIN_JACK)
-	add_definitions(-DJACK_PLUGIN)
-	include_directories(${INCLUDE} ${JACK_INCLUDE_DIRS})
-	add_library(audjack SHARED ${JACK_SRC} ${JACK_HDR} ${HDR})
-	if(DYNLOAD_JACK)
-		target_link_libraries(audjack audaspace)
-	else()
-		target_link_libraries(audjack audaspace ${JACK_LIBRARIES})
-	endif()
-	set_target_properties(audjack PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-	install(TARGETS audjack DESTINATION ${DEFAULT_PLUGIN_PATH})
+  add_definitions(-DJACK_PLUGIN)
+  include_directories(${INCLUDE} ${JACK_INCLUDE_DIRS})
+  add_library(audjack SHARED ${JACK_SRC} ${JACK_HDR} ${HDR})
+  if(DYNLOAD_JACK)
+    target_link_libraries(audjack audaspace)
+  else()
+    target_link_libraries(audjack audaspace ${JACK_LIBRARIES})
+  endif()
+  set_target_properties(audjack PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+  install(TARGETS audjack DESTINATION ${DEFAULT_PLUGIN_PATH})
 endif()
 
 if(WITH_LIBSNDFILE AND PLUGIN_LIBSNDFILE)
-	add_definitions(-DLIBSNDFILE_PLUGIN)
-	include_directories(${INCLUDE} ${LIBSNDFILE_INCLUDE_DIRS})
-	add_library(audlibsndfile SHARED ${LIBSNDFILE_SRC} ${LIBSNDFILE_HDR} ${HDR})
-	set_target_properties(audlibsndfile PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-	target_link_libraries(audlibsndfile audaspace ${LIBSNDFILE_LIBRARIES})
-	install(TARGETS audlibsndfile DESTINATION ${DEFAULT_PLUGIN_PATH})
+  add_definitions(-DLIBSNDFILE_PLUGIN)
+  include_directories(${INCLUDE} ${LIBSNDFILE_INCLUDE_DIRS})
+  add_library(audlibsndfile SHARED ${LIBSNDFILE_SRC} ${LIBSNDFILE_HDR} ${HDR})
+  set_target_properties(audlibsndfile PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+  target_link_libraries(audlibsndfile audaspace ${LIBSNDFILE_LIBRARIES})
+  install(TARGETS audlibsndfile DESTINATION ${DEFAULT_PLUGIN_PATH})
 endif()
 
 if(WITH_OPENAL AND PLUGIN_OPENAL)
-	add_definitions(-DOPENAL_PLUGIN)
-	include_directories(${INCLUDE} ${OPENAL_INCLUDE_DIR})
-	add_library(audopenal SHARED ${OPENAL_SRC} ${OPENAL_HDR} ${HDR})
-	set_target_properties(audopenal PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-	target_link_libraries(audopenal audaspace ${OPENAL_LIBRARY})
-	install(TARGETS audopenal DESTINATION ${DEFAULT_PLUGIN_PATH})
+  add_definitions(-DOPENAL_PLUGIN)
+  include_directories(${INCLUDE} ${OPENAL_INCLUDE_DIR})
+  add_library(audopenal SHARED ${OPENAL_SRC} ${OPENAL_HDR} ${HDR})
+  set_target_properties(audopenal PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+  target_link_libraries(audopenal audaspace ${OPENAL_LIBRARY})
+  install(TARGETS audopenal DESTINATION ${DEFAULT_PLUGIN_PATH})
 endif()
 
 if(WITH_SDL AND PLUGIN_SDL)
-	add_definitions(-DSDL_PLUGIN)
-	include_directories(${INCLUDE} ${SDL_INCLUDE_DIR})
-	add_library(audsdl SHARED ${SDL_SRC} ${SDL_HDR} ${HDR})
-	set_target_properties(audsdl PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-	target_link_libraries(audsdl audaspace ${SDL_LIBRARY})
-	install(TARGETS audsdl DESTINATION ${DEFAULT_PLUGIN_PATH})
+  add_definitions(-DSDL_PLUGIN)
+  include_directories(${INCLUDE} ${SDL_INCLUDE_DIR})
+  add_library(audsdl SHARED ${SDL_SRC} ${SDL_HDR} ${HDR})
+  set_target_properties(audsdl PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+  target_link_libraries(audsdl audaspace ${SDL_LIBRARY})
+  install(TARGETS audsdl DESTINATION ${DEFAULT_PLUGIN_PATH})
 endif()
 
 # dlls
 
 if(WIN32)
-	if(DLLS)
-		install(FILES ${DLLS} DESTINATION ${BIN_DESTINATION})
-	endif()
+  if(DLLS)
+    install(FILES ${DLLS} DESTINATION ${BIN_DESTINATION})
+  endif()
 endif()
 
 # demos
 
 if(BUILD_DEMOS)
-	include_directories(${INCLUDE})
+  include_directories(${INCLUDE})
 
-	set(DEMOS audaplay audaconvert audaremap signalgen randsounds dynamicmusic playbackmanager)
+  set(DEMOS audaplay audaconvert audaremap signalgen randsounds dynamicmusic playbackmanager)
 
-	add_executable(audaplay demos/audaplay.cpp)
-	target_link_libraries(audaplay audaspace)
+  add_executable(audaplay demos/audaplay.cpp)
+  target_link_libraries(audaplay audaspace)
 
-	add_executable(audaconvert demos/audaconvert.cpp)
-	target_link_libraries(audaconvert audaspace)
+  add_executable(audaconvert demos/audaconvert.cpp)
+  target_link_libraries(audaconvert audaspace)
 
-	add_executable(audaremap demos/audaremap.cpp)
-	target_link_libraries(audaremap audaspace)
+  add_executable(audaremap demos/audaremap.cpp)
+  target_link_libraries(audaremap audaspace)
 
-	add_executable(signalgen demos/signalgen.cpp)
-	target_link_libraries(signalgen audaspace)
+  add_executable(signalgen demos/signalgen.cpp)
+  target_link_libraries(signalgen audaspace)
 
-	add_executable(randsounds demos/randsounds.cpp)
-	target_link_libraries(randsounds audaspace)
+  add_executable(randsounds demos/randsounds.cpp)
+  target_link_libraries(randsounds audaspace)
 
-	add_executable(dynamicmusic demos/dynamicmusic.cpp)
-	target_link_libraries(dynamicmusic audaspace)
+  add_executable(dynamicmusic demos/dynamicmusic.cpp)
+  target_link_libraries(dynamicmusic audaspace)
 
-	add_executable(playbackmanager demos/playbackmanager.cpp)
-	target_link_libraries(playbackmanager audaspace)
+  add_executable(playbackmanager demos/playbackmanager.cpp)
+  target_link_libraries(playbackmanager audaspace)
 
-	if(WITH_FFTW)
-		list(APPEND DEMOS convolution binaural)
+  if(WITH_FFTW)
+    list(APPEND DEMOS convolution binaural)
 
-		add_executable(convolution demos/convolution.cpp)
-		target_link_libraries(convolution audaspace)
+    add_executable(convolution demos/convolution.cpp)
+    target_link_libraries(convolution audaspace)
 
-		add_executable(binaural demos/binaural.cpp)
-		target_link_libraries(binaural audaspace)
-	endif()
+    add_executable(binaural demos/binaural.cpp)
+    target_link_libraries(binaural audaspace)
+  endif()
 
-	if(WITH_OPENAL)
-		list(APPEND DEMOS openaldevices)
+  if(WITH_OPENAL)
+    list(APPEND DEMOS openaldevices)
 
-		add_executable(openaldevices demos/openaldevices.cpp)
-		if(PLUGIN_OPENAL)
-			target_link_libraries(openaldevices audaspace audopenal)
-		else()
-			target_link_libraries(openaldevices audaspace)
-		endif()
-	endif()
+    add_executable(openaldevices demos/openaldevices.cpp)
+    if(PLUGIN_OPENAL)
+      target_link_libraries(openaldevices audaspace audopenal)
+    else()
+      target_link_libraries(openaldevices audaspace)
+    endif()
+  endif()
 
-	install(TARGETS ${DEMOS}
-		RUNTIME DESTINATION ${BIN_DESTINATION}
-		LIBRARY DESTINATION ${LIB_DESTINATION}
-		ARCHIVE DESTINATION ${LIB_DESTINATION}
-	)
+  install(TARGETS ${DEMOS}
+    RUNTIME DESTINATION ${BIN_DESTINATION}
+    LIBRARY DESTINATION ${LIB_DESTINATION}
+    ARCHIVE DESTINATION ${LIB_DESTINATION}
+  )
 endif()
 
 # bindings
 
 if(WITH_C)
-	if(SEPARATE_C)
-		add_library(audaspace-c ${LIBRARY_TYPE} ${C_SRC} ${C_HDR})
-		target_link_libraries(audaspace-c audaspace)
-		set_target_properties(audaspace-c PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-		install(TARGETS audaspace-c
-			RUNTIME DESTINATION ${BIN_DESTINATION}
-			LIBRARY DESTINATION ${LIB_DESTINATION}
-			ARCHIVE DESTINATION ${LIB_DESTINATION}
-		)
-	endif()
-
-	if(AUDASPACE_STANDALONE)
-		install(FILES ${C_HDR} DESTINATION include/audaspace)
-	endif()
+  if(SEPARATE_C)
+    add_library(audaspace-c ${LIBRARY_TYPE} ${C_SRC} ${C_HDR})
+    target_link_libraries(audaspace-c audaspace)
+    set_target_properties(audaspace-c PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+    install(TARGETS audaspace-c
+      RUNTIME DESTINATION ${BIN_DESTINATION}
+      LIBRARY DESTINATION ${LIB_DESTINATION}
+      ARCHIVE DESTINATION ${LIB_DESTINATION}
+    )
+  endif()
+
+  if(AUDASPACE_STANDALONE)
+    install(FILES ${C_HDR} DESTINATION include/audaspace)
+  endif()
 endif()
 
 if(WITH_PYTHON)
-	set(PYTHON_SRC
-		bindings/python/PyAPI.cpp
-		bindings/python/PyDevice.cpp
-		bindings/python/PyDynamicMusic.cpp
-		bindings/python/PyHandle.cpp
-		bindings/python/PyPlaybackManager.cpp
-		bindings/python/PySequence.cpp
-		bindings/python/PySequenceEntry.cpp
-		bindings/python/PySound.cpp
-		bindings/python/PySource.cpp
-		bindings/python/PyThreadPool.cpp
-	)
-	set(PYTHON_HDR
-		bindings/python/PyAPI.h
-		bindings/python/PyDevice.h
-		bindings/python/PyDynamicMusic.h
-		bindings/python/PyHandle.h
-		bindings/python/PyPlaybackManager.h
-		bindings/python/PySequence.h
-		bindings/python/PySequenceEntry.h
-		bindings/python/PySound.h
-		bindings/python/PySource.h
-		bindings/python/PyThreadPool.h
-	)
-
-	if(WITH_FFTW)
-		list(APPEND PYTHON_SRC
-			bindings/python/PyHRTF.cpp
-			bindings/python/PyImpulseResponse.cpp
-			)
-		list(APPEND PYTHON_HDR
-			bindings/python/PyHRTF.h
-			bindings/python/PyImpulseResponse.h
-			)
-	endif()
-
-	add_library(audaspace-py ${LIBRARY_TYPE} ${PYTHON_SRC} ${PYTHON_HDR})
-	target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
-	set_target_properties(audaspace-py PROPERTIES SOVERSION ${AUDASPACE_VERSION})
-
-	if(AUDASPACE_STANDALONE)
-		install(TARGETS audaspace-py
-			RUNTIME DESTINATION ${BIN_DESTINATION}
-			LIBRARY DESTINATION ${LIB_DESTINATION}
-			ARCHIVE DESTINATION ${LIB_DESTINATION}
-		)
-
-		install(FILES ${PYTHON_HDR} DESTINATION include/audaspace/python)
-	endif()
-
-	if(WITH_PYTHON_MODULE)
-		set(PYTHON_SOURCE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/python)
-		configure_file(${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${CMAKE_CURRENT_BINARY_DIR}/setup.py ESCAPE_QUOTES @ONLY)
-
-		if(APPLE)
-			add_custom_command(OUTPUT build COMMAND MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
-		elseif(WIN32)
-			set(ENV{VS100COMNTOOLS} $ENV{VS120COMNTOOLS})
-			add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
-		else()
-			add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
-		endif()
-		add_custom_target(pythonmodule ALL DEPENDS build SOURCES ${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${PYTHON_SRC} ${PYTHON_HDR})
-		add_dependencies(pythonmodule audaspace)
-
-		install(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} setup.py install --root=\$ENV{DESTDIR} --prefix=${CMAKE_INSTALL_PREFIX})")
-	endif()
+  set(PYTHON_SRC
+    bindings/python/PyAPI.cpp
+    bindings/python/PyDevice.cpp
+    bindings/python/PyDynamicMusic.cpp
+    bindings/python/PyHandle.cpp
+    bindings/python/PyPlaybackManager.cpp
+    bindings/python/PySequence.cpp
+    bindings/python/PySequenceEntry.cpp
+    bindings/python/PySound.cpp
+    bindings/python/PySource.cpp
+    bindings/python/PyThreadPool.cpp
+  )
+  set(PYTHON_HDR
+    bindings/python/PyAPI.h
+    bindings/python/PyDevice.h
+    bindings/python/PyDynamicMusic.h
+    bindings/python/PyHandle.h
+    bindings/python/PyPlaybackManager.h
+    bindings/python/PySequence.h
+    bindings/python/PySequenceEntry.h
+    bindings/python/PySound.h
+    bindings/python/PySource.h
+    bindings/python/PyThreadPool.h
+  )
+
+  if(WITH_FFTW)
+    list(APPEND PYTHON_SRC
+      bindings/python/PyHRTF.cpp
+      bindings/python/PyImpulseResponse.cpp
+      )
+    list(APPEND PYTHON_HDR
+      bindings/python/PyHRTF.h
+      bindings/python/PyImpulseResponse.h
+      )
+  endif()
+
+  add_library(audaspace-py ${LIBRARY_TYPE} ${PYTHON_SRC} ${PYTHON_HDR})
+  target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
+  set_target_properties(audaspace-py PROPERTIES SOVERSION ${AUDASPACE_VERSION})
+
+  if(AUDASPACE_STANDALONE)
+    install(TARGETS audaspace-py
+      RUNTIME DESTINATION ${BIN_DESTINATION}
+      LIBRARY DESTINATION ${LIB_DESTINATION}
+      ARCHIVE DESTINATION ${LIB_DESTINATION}
+    )
+
+    install(FILES ${PYTHON_HDR} DESTINATION include/audaspace/python)
+  endif()
+
+  if(WITH_PYTHON_MODULE)
+    set(PYTHON_SOURCE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/python)
+    configure_file(${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${CMAKE_CURRENT_BINARY_DIR}/setup.py ESCAPE_QUOTES @ONLY)
+
+    if(APPLE)
+      add_custom_command(OUTPUT build COMMAND MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
+    elseif(WIN32)
+      set(ENV{VS100COMNTOOLS} $ENV{VS120COMNTOOLS})
+      add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
+    else()
+      add_custom_command(OUTPUT build COMMAND ${PYTHON_EXECUTABLE} setup.py build DEPENDS ${PYTHON_SRC} ${PYTHON_HDR})
+    endif()
+    add_custom_target(pythonmodule ALL DEPENDS build SOURCES ${PYTHON_SOURCE_DIRECTORY}/setup.py.in ${PYTHON_SRC} ${PYTHON_HDR})
+    add_dependencies(pythonmodule audaspace)
+
+    install(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} setup.py install --root=\$ENV{DESTDIR} --prefix=${CMAKE_INSTALL_PREFIX})")
+  endif()
 endif()
 
 # docs
 
 if(WITH_DOCS)
-	find_package(Doxygen ${PACKAGE_OPTION})
+  find_package(Doxygen ${PACKAGE_OPTION})
 
-	if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND)
-		configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
+  if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND)
+    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
 
-		add_custom_target(audaspace_doc ALL ${DOXYGEN_EXECUTABLE} Doxyfile COMMENT "Building C++ HTML documentation with Doxygen.")
-	else()
-		set(WITH_DOCS FALSE CACHE BOOL "Build C++ HTML Documentation with Doxygen" FORCE)
-		message(WARNING "Doxygen (and/or dot) not found, documentation will not be built.")
-	endif()
+    add_custom_target(audaspace_doc ALL ${DOXYGEN_EXECUTABLE} Doxyfile COMMENT "Building C++ HTML documentation with Doxygen.")
+  else()
+    set(WITH_DOCS FALSE CACHE BOOL "Build C++ HTML Documentation with Doxygen" FORCE)
+    message(WARNING "Doxygen (and/or dot) not found, documentation will not be built.")
+  endif()
 endif()
 
 if(WITH_BINDING_DOCS)
-	find_package(Sphinx ${PACKAGE_OPTION})
+  find_package(Sphinx ${PACKAGE_OPTION})
 
-	if(SPHINX_FOUND)
-		configure_file(${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/conf.py @ONLY)
+  if(SPHINX_FOUND)
+    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/conf.py @ONLY)
 
-		add_custom_target(bindings_doc ALL COMMAND ${PYTHON_EXECUTABLE} setup.py --build-docs ${SPHINX_EXECUTABLE} -q -b html -c "${CMAKE_CURRENT_BINARY_DIR}" -d "${CMAKE_CURRENT_BINARY_DIR}/_doctrees" "${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc" "${CMAKE_CURRENT_BINARY_DIR}/doc/bindings" DEPENDS pythonmodule COMMENT "Building C/Python HTML documentation with Sphinx.")
-	else()
-		set(WITH_BINDING_DOCS FALSE CACHE BOOL "Build C/Python HTML Documentation with Sphinx" FORCE)
-		message(WARNING "Sphinx not found, binding documentation will not be built.")
-	endif()
+    add_custom_target(bindings_doc ALL COMMAND ${PYTHON_EXECUTABLE} setup.py --build-docs ${SPHINX_EXECUTABLE} -q -b html -c "${CMAKE_CURRENT_BINARY_DIR}" -d "${CMAKE_CURRENT_BINARY_DIR}/_doctrees" "${CMAKE_CURRENT_SOURCE_DIR}/bindings/doc" "${CMAKE_CURRENT_BINARY_DIR}/doc/bindings" DEPENDS pythonmodule COMMENT "Building C/Python HTML documentation with Sphinx.")
+  else()
+    set(WITH_BINDING_DOCS FALSE CACHE BOOL "Build C/Python HTML Documentation with Sphinx" FORCE)
+    message(WARNING "Sphinx not found, binding documentation will not be built.")
+  endif()
 endif()
 
 if(WITH_DOCS OR WITH_BINDING_DOCS)
-	install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/ DESTINATION ${DOCUMENTATION_INSTALL_PATH})
+  install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/ DESTINATION ${DOCUMENTATION_INSTALL_PATH})
 endif()
diff --git a/extern/audaspace/blender_config.cmake b/extern/audaspace/blender_config.cmake
index 7deb78d27da527820daea0d6484e300913d17820..0cf4709965f2e6c4ad6af8711326b37c6f17fe66 100644
--- a/extern/audaspace/blender_config.cmake
+++ b/extern/audaspace/blender_config.cmake
@@ -25,7 +25,7 @@ set(NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_INCLUDE_DIRS})
 set(SDL_FOUND ${WITH_SDL})
 
 if(WIN32)
-	set(DEFAULT_PLUGIN_PATH "plugins" CACHE STRING "Default plugin installation and loading path.")
+  set(DEFAULT_PLUGIN_PATH "plugins" CACHE STRING "Default plugin installation and loading path.")
 endif()
 
 mark_as_advanced(BUILD_DEMOS SHARED_LIBRARY WITH_C WITH_DOCS WITH_FFMPEG WITH_FFTW WITH_LIBSNDFILE SEPARATE_C PLUGIN_FFMPEG PLUGIN_JACK PLUGIN_LIBSNDFILE PLUGIN_OPENAL PLUGIN_SDL WITH_PYTHON_MODULE DYNLOAD_JACK WITH_BINDING_DOCS DEFAULT_PLUGIN_PATH)
diff --git a/extern/binreloc/CMakeLists.txt b/extern/binreloc/CMakeLists.txt
index 766939b4228107dd016a6dc84225a44afa5463d5..4dfe960c571e337a173951bd7ae0d3b3a446b39e 100644
--- a/extern/binreloc/CMakeLists.txt
+++ b/extern/binreloc/CMakeLists.txt
@@ -19,7 +19,7 @@
 #
 
 set(INC
-	include
+  include
 )
 
 set(INC_SYS
@@ -27,9 +27,9 @@ set(INC_SYS
 )
 
 set(SRC
-	binreloc.c
+  binreloc.c
 
-	include/binreloc.h
+  include/binreloc.h
 )
 
 set(LIB
diff --git a/extern/bullet2/CMakeLists.txt b/extern/bullet2/CMakeLists.txt
index b9c21bd831f9f498a82419df29d22fdf1cbc179e..f1bb6a37cbf9e29dd4e436bcf748f8b2298fc569 100644
--- a/extern/bullet2/CMakeLists.txt
+++ b/extern/bullet2/CMakeLists.txt
@@ -19,8 +19,8 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
-	src
+  .
+  src
 )
 
 set(INC_SYS
@@ -28,391 +28,391 @@ set(INC_SYS
 )
 
 set(SRC
-	src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
-	src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
-	src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
-	src/BulletCollision/BroadphaseCollision/btDbvt.cpp
-	src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
-	src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
-	src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
-	src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
-	src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
-	src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
-	src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
-	src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
-	src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
-	src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
-	src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
-	src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
-	src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
-	src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btGhostObject.cpp
-	src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.cpp
-	src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
-	src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
-	src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
-	src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
-	src/BulletCollision/CollisionDispatch/btUnionFind.cpp
-	src/BulletCollision/CollisionShapes/btBox2dShape.cpp
-	src/BulletCollision/CollisionShapes/btBoxShape.cpp
-	src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
-	src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
-	src/BulletCollision/CollisionShapes/btCollisionShape.cpp
-	src/BulletCollision/CollisionShapes/btCompoundShape.cpp
-	src/BulletCollision/CollisionShapes/btConcaveShape.cpp
-	src/BulletCollision/CollisionShapes/btConeShape.cpp
-	src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
-	src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
-	src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
-	src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
-	src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
-	src/BulletCollision/CollisionShapes/btConvexShape.cpp
-	src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
-	src/BulletCollision/CollisionShapes/btCylinderShape.cpp
-	src/BulletCollision/CollisionShapes/btEmptyShape.cpp
-	src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
-	src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
-	src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
-	src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
-	src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
-	src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
-	src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
-	src/BulletCollision/CollisionShapes/btShapeHull.cpp
-	src/BulletCollision/CollisionShapes/btSphereShape.cpp
-	src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
-	src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
-	src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
-	src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
-	src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
-	src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
-	src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
-	src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
-	src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
-	src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
-	src/BulletCollision/Gimpact/btContactProcessing.cpp
-	src/BulletCollision/Gimpact/btGImpactBvh.cpp
-	src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
-	src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
-	src/BulletCollision/Gimpact/btGImpactShape.cpp
-	src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
-	src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
-	src/BulletCollision/Gimpact/gim_box_set.cpp
-	src/BulletCollision/Gimpact/gim_contact.cpp
-	src/BulletCollision/Gimpact/gim_memory.cpp
-	src/BulletCollision/Gimpact/gim_tri_collision.cpp
-	src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
-	src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
-	src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
-	src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
-	src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
-	src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
-	src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
-	src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
-	src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
-	src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
-	src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
-	src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+  src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+  src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+  src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+  src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+  src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+  src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+  src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+  src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+  src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+  src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+  src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+  src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+  src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+  src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+  src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+  src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
+  src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+  src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+  src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.cpp
+  src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+  src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+  src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+  src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+  src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+  src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+  src/BulletCollision/CollisionShapes/btBoxShape.cpp
+  src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+  src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+  src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+  src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+  src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+  src/BulletCollision/CollisionShapes/btConeShape.cpp
+  src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+  src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+  src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+  src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+  src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+  src/BulletCollision/CollisionShapes/btConvexShape.cpp
+  src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+  src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+  src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+  src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+  src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+  src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+  src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+  src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+  src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+  src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+  src/BulletCollision/CollisionShapes/btShapeHull.cpp
+  src/BulletCollision/CollisionShapes/btSphereShape.cpp
+  src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+  src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+  src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+  src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+  src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+  src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+  src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+  src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+  src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+  src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+  src/BulletCollision/Gimpact/btContactProcessing.cpp
+  src/BulletCollision/Gimpact/btGImpactBvh.cpp
+  src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+  src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+  src/BulletCollision/Gimpact/btGImpactShape.cpp
+  src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+  src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+  src/BulletCollision/Gimpact/gim_box_set.cpp
+  src/BulletCollision/Gimpact/gim_contact.cpp
+  src/BulletCollision/Gimpact/gim_memory.cpp
+  src/BulletCollision/Gimpact/gim_tri_collision.cpp
+  src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+  src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+  src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+  src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+  src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+  src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+  src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+  src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+  src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+  src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+  src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+  src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
 
-	src/BulletDynamics/Character/btKinematicCharacterController.cpp
-	src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btFixedConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.cpp
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
-	src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.cpp
-	src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
-	src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
-	src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
-	src/BulletDynamics/Dynamics/Bullet-C-API.cpp
-	src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
-	src/BulletDynamics/Dynamics/btRigidBody.cpp
-	src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
-	src/BulletDynamics/Featherstone/btMultiBody.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyConstraint.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyJointMotor.cpp
-	src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.cpp
-	src/BulletDynamics/MLCPSolvers/btDantzigLCP.cpp
-	src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.cpp
-	src/BulletDynamics/MLCPSolvers/btMLCPSolver.cpp
-	src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
-	src/BulletDynamics/Vehicle/btWheelInfo.cpp
+  src/BulletDynamics/Character/btKinematicCharacterController.cpp
+  src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btFixedConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.cpp
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+  src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.cpp
+  src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+  src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+  src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+  src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+  src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+  src/BulletDynamics/Dynamics/btRigidBody.cpp
+  src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+  src/BulletDynamics/Featherstone/btMultiBody.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyConstraint.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyJointMotor.cpp
+  src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.cpp
+  src/BulletDynamics/MLCPSolvers/btDantzigLCP.cpp
+  src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.cpp
+  src/BulletDynamics/MLCPSolvers/btMLCPSolver.cpp
+  src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+  src/BulletDynamics/Vehicle/btWheelInfo.cpp
 
-	src/BulletSoftBody/btDefaultSoftBodySolver.cpp
-	src/BulletSoftBody/btSoftBody.cpp
-	src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
-	src/BulletSoftBody/btSoftBodyHelpers.cpp
-	src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
-	src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
-	src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
-	src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+  src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+  src/BulletSoftBody/btSoftBody.cpp
+  src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+  src/BulletSoftBody/btSoftBodyHelpers.cpp
+  src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+  src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+  src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+  src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
 
-	src/LinearMath/btAlignedAllocator.cpp
-	src/LinearMath/btConvexHull.cpp
-	src/LinearMath/btConvexHullComputer.cpp
-	src/LinearMath/btGeometryUtil.cpp
-	src/LinearMath/btPolarDecomposition.cpp
-	src/LinearMath/btQuickprof.cpp
-	src/LinearMath/btSerializer.cpp
-	src/LinearMath/btVector3.cpp
+  src/LinearMath/btAlignedAllocator.cpp
+  src/LinearMath/btConvexHull.cpp
+  src/LinearMath/btConvexHullComputer.cpp
+  src/LinearMath/btGeometryUtil.cpp
+  src/LinearMath/btPolarDecomposition.cpp
+  src/LinearMath/btQuickprof.cpp
+  src/LinearMath/btSerializer.cpp
+  src/LinearMath/btVector3.cpp
 
-	src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
-	src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
-	src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
-	src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
-	src/BulletCollision/BroadphaseCollision/btDbvt.h
-	src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
-	src/BulletCollision/BroadphaseCollision/btDispatcher.h
-	src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
-	src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
-	src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
-	src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
-	src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
-	src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
-	src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
-	src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
-	src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
-	src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
-	src/BulletCollision/CollisionDispatch/btCollisionObject.h
-	src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
-	src/BulletCollision/CollisionDispatch/btCollisionWorld.h
-	src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
-	src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
-	src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btGhostObject.h
-	src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.h
-	src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
-	src/BulletCollision/CollisionDispatch/btManifoldResult.h
-	src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
-	src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
-	src/BulletCollision/CollisionDispatch/btUnionFind.h
-	src/BulletCollision/CollisionShapes/btBox2dShape.h
-	src/BulletCollision/CollisionShapes/btBoxShape.h
-	src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
-	src/BulletCollision/CollisionShapes/btCapsuleShape.h
-	src/BulletCollision/CollisionShapes/btCollisionMargin.h
-	src/BulletCollision/CollisionShapes/btCollisionShape.h
-	src/BulletCollision/CollisionShapes/btCompoundShape.h
-	src/BulletCollision/CollisionShapes/btConcaveShape.h
-	src/BulletCollision/CollisionShapes/btConeShape.h
-	src/BulletCollision/CollisionShapes/btConvex2dShape.h
-	src/BulletCollision/CollisionShapes/btConvexHullShape.h
-	src/BulletCollision/CollisionShapes/btConvexInternalShape.h
-	src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
-	src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
-	src/BulletCollision/CollisionShapes/btConvexShape.h
-	src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
-	src/BulletCollision/CollisionShapes/btCylinderShape.h
-	src/BulletCollision/CollisionShapes/btEmptyShape.h
-	src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
-	src/BulletCollision/CollisionShapes/btMaterial.h
-	src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
-	src/BulletCollision/CollisionShapes/btMultiSphereShape.h
-	src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
-	src/BulletCollision/CollisionShapes/btOptimizedBvh.h
-	src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
-	src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
-	src/BulletCollision/CollisionShapes/btShapeHull.h
-	src/BulletCollision/CollisionShapes/btSphereShape.h
-	src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
-	src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
-	src/BulletCollision/CollisionShapes/btTetrahedronShape.h
-	src/BulletCollision/CollisionShapes/btTriangleBuffer.h
-	src/BulletCollision/CollisionShapes/btTriangleCallback.h
-	src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
-	src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
-	src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
-	src/BulletCollision/CollisionShapes/btTriangleMesh.h
-	src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
-	src/BulletCollision/CollisionShapes/btTriangleShape.h
-	src/BulletCollision/CollisionShapes/btUniformScalingShape.h
-	src/BulletCollision/Gimpact/btBoxCollision.h
-	src/BulletCollision/Gimpact/btClipPolygon.h
-	src/BulletCollision/Gimpact/btCompoundFromGimpact.h
-	src/BulletCollision/Gimpact/btContactProcessing.h
-	src/BulletCollision/Gimpact/btGImpactBvh.h
-	src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
-	src/BulletCollision/Gimpact/btGImpactMassUtil.h
-	src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
-	src/BulletCollision/Gimpact/btGImpactShape.h
-	src/BulletCollision/Gimpact/btGenericPoolAllocator.h
-	src/BulletCollision/Gimpact/btGeometryOperations.h
-	src/BulletCollision/Gimpact/btQuantization.h
-	src/BulletCollision/Gimpact/btTriangleShapeEx.h
-	src/BulletCollision/Gimpact/gim_array.h
-	src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
-	src/BulletCollision/Gimpact/gim_bitset.h
-	src/BulletCollision/Gimpact/gim_box_collision.h
-	src/BulletCollision/Gimpact/gim_box_set.h
-	src/BulletCollision/Gimpact/gim_clip_polygon.h
-	src/BulletCollision/Gimpact/gim_contact.h
-	src/BulletCollision/Gimpact/gim_geom_types.h
-	src/BulletCollision/Gimpact/gim_geometry.h
-	src/BulletCollision/Gimpact/gim_hash_table.h
-	src/BulletCollision/Gimpact/gim_linear_math.h
-	src/BulletCollision/Gimpact/gim_math.h
-	src/BulletCollision/Gimpact/gim_memory.h
-	src/BulletCollision/Gimpact/gim_radixsort.h
-	src/BulletCollision/Gimpact/gim_tri_collision.h
-	src/BulletCollision/NarrowPhaseCollision/btComputeGjkEpaPenetration.h
-	src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
-	src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
-	src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
-	src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkCollisionDescription.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkEpa3.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
-	src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
-	src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
-	src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
-	src/BulletCollision/NarrowPhaseCollision/btMprPenetration.h
-	src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
-	src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
-	src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
-	src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
-	src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
-	src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
-	src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+  src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+  src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+  src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+  src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+  src/BulletCollision/BroadphaseCollision/btDbvt.h
+  src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+  src/BulletCollision/BroadphaseCollision/btDispatcher.h
+  src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+  src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+  src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+  src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+  src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+  src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+  src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+  src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+  src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+  src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+  src/BulletCollision/CollisionDispatch/btCollisionObject.h
+  src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+  src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+  src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
+  src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btCompoundCompoundCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+  src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btGhostObject.h
+  src/BulletCollision/CollisionDispatch/btHashedSimplePairCache.h
+  src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
+  src/BulletCollision/CollisionDispatch/btManifoldResult.h
+  src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+  src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+  src/BulletCollision/CollisionDispatch/btUnionFind.h
+  src/BulletCollision/CollisionShapes/btBox2dShape.h
+  src/BulletCollision/CollisionShapes/btBoxShape.h
+  src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+  src/BulletCollision/CollisionShapes/btCapsuleShape.h
+  src/BulletCollision/CollisionShapes/btCollisionMargin.h
+  src/BulletCollision/CollisionShapes/btCollisionShape.h
+  src/BulletCollision/CollisionShapes/btCompoundShape.h
+  src/BulletCollision/CollisionShapes/btConcaveShape.h
+  src/BulletCollision/CollisionShapes/btConeShape.h
+  src/BulletCollision/CollisionShapes/btConvex2dShape.h
+  src/BulletCollision/CollisionShapes/btConvexHullShape.h
+  src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+  src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+  src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+  src/BulletCollision/CollisionShapes/btConvexShape.h
+  src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+  src/BulletCollision/CollisionShapes/btCylinderShape.h
+  src/BulletCollision/CollisionShapes/btEmptyShape.h
+  src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
+  src/BulletCollision/CollisionShapes/btMaterial.h
+  src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+  src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+  src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+  src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+  src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+  src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+  src/BulletCollision/CollisionShapes/btShapeHull.h
+  src/BulletCollision/CollisionShapes/btSphereShape.h
+  src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+  src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+  src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+  src/BulletCollision/CollisionShapes/btTriangleBuffer.h
+  src/BulletCollision/CollisionShapes/btTriangleCallback.h
+  src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+  src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+  src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+  src/BulletCollision/CollisionShapes/btTriangleMesh.h
+  src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+  src/BulletCollision/CollisionShapes/btTriangleShape.h
+  src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+  src/BulletCollision/Gimpact/btBoxCollision.h
+  src/BulletCollision/Gimpact/btClipPolygon.h
+  src/BulletCollision/Gimpact/btCompoundFromGimpact.h
+  src/BulletCollision/Gimpact/btContactProcessing.h
+  src/BulletCollision/Gimpact/btGImpactBvh.h
+  src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
+  src/BulletCollision/Gimpact/btGImpactMassUtil.h
+  src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+  src/BulletCollision/Gimpact/btGImpactShape.h
+  src/BulletCollision/Gimpact/btGenericPoolAllocator.h
+  src/BulletCollision/Gimpact/btGeometryOperations.h
+  src/BulletCollision/Gimpact/btQuantization.h
+  src/BulletCollision/Gimpact/btTriangleShapeEx.h
+  src/BulletCollision/Gimpact/gim_array.h
+  src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+  src/BulletCollision/Gimpact/gim_bitset.h
+  src/BulletCollision/Gimpact/gim_box_collision.h
+  src/BulletCollision/Gimpact/gim_box_set.h
+  src/BulletCollision/Gimpact/gim_clip_polygon.h
+  src/BulletCollision/Gimpact/gim_contact.h
+  src/BulletCollision/Gimpact/gim_geom_types.h
+  src/BulletCollision/Gimpact/gim_geometry.h
+  src/BulletCollision/Gimpact/gim_hash_table.h
+  src/BulletCollision/Gimpact/gim_linear_math.h
+  src/BulletCollision/Gimpact/gim_math.h
+  src/BulletCollision/Gimpact/gim_memory.h
+  src/BulletCollision/Gimpact/gim_radixsort.h
+  src/BulletCollision/Gimpact/gim_tri_collision.h
+  src/BulletCollision/NarrowPhaseCollision/btComputeGjkEpaPenetration.h
+  src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+  src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+  src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+  src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkCollisionDescription.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkEpa3.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+  src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+  src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+  src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+  src/BulletCollision/NarrowPhaseCollision/btMprPenetration.h
+  src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+  src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+  src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+  src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+  src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+  src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+  src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
 
-	src/BulletDynamics/Character/btCharacterControllerInterface.h
-	src/BulletDynamics/Character/btKinematicCharacterController.h
-	src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
-	src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
-	src/BulletDynamics/ConstraintSolver/btContactConstraint.h
-	src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
-	src/BulletDynamics/ConstraintSolver/btFixedConstraint.h
-	src/BulletDynamics/ConstraintSolver/btGearConstraint.h
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.h
-	src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
-	src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
-	src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
-	src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
-	src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h
-	src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
-	src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
-	src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
-	src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
-	src/BulletDynamics/ConstraintSolver/btSolverBody.h
-	src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
-	src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
-	src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
-	src/BulletDynamics/Dynamics/btActionInterface.h
-	src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
-	src/BulletDynamics/Dynamics/btDynamicsWorld.h
-	src/BulletDynamics/Dynamics/btRigidBody.h
-	src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
-	src/BulletDynamics/Featherstone/btMultiBody.h
-	src/BulletDynamics/Featherstone/btMultiBodyConstraint.h
-	src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.h
-	src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.h
-	src/BulletDynamics/Featherstone/btMultiBodyJointFeedback.h
-	src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.h
-	src/BulletDynamics/Featherstone/btMultiBodyJointMotor.h
-	src/BulletDynamics/Featherstone/btMultiBodyLink.h
-	src/BulletDynamics/Featherstone/btMultiBodyLinkCollider.h
-	src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.h
-	src/BulletDynamics/Featherstone/btMultiBodySolverConstraint.h
-	src/BulletDynamics/MLCPSolvers/btDantzigLCP.h
-	src/BulletDynamics/MLCPSolvers/btDantzigSolver.h
-	src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.h
-	src/BulletDynamics/MLCPSolvers/btLemkeSolver.h
-	src/BulletDynamics/MLCPSolvers/btMLCPSolver.h
-	src/BulletDynamics/MLCPSolvers/btMLCPSolverInterface.h
-	src/BulletDynamics/MLCPSolvers/btPATHSolver.h
-	src/BulletDynamics/MLCPSolvers/btSolveProjectedGaussSeidel.h
-	src/BulletDynamics/Vehicle/btRaycastVehicle.h
-	src/BulletDynamics/Vehicle/btVehicleRaycaster.h
-	src/BulletDynamics/Vehicle/btWheelInfo.h
+  src/BulletDynamics/Character/btCharacterControllerInterface.h
+  src/BulletDynamics/Character/btKinematicCharacterController.h
+  src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+  src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+  src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+  src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+  src/BulletDynamics/ConstraintSolver/btFixedConstraint.h
+  src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.h
+  src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+  src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+  src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+  src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+  src/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h
+  src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+  src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+  src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+  src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+  src/BulletDynamics/ConstraintSolver/btSolverBody.h
+  src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+  src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+  src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+  src/BulletDynamics/Dynamics/btActionInterface.h
+  src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+  src/BulletDynamics/Dynamics/btDynamicsWorld.h
+  src/BulletDynamics/Dynamics/btRigidBody.h
+  src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+  src/BulletDynamics/Featherstone/btMultiBody.h
+  src/BulletDynamics/Featherstone/btMultiBodyConstraint.h
+  src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.h
+  src/BulletDynamics/Featherstone/btMultiBodyDynamicsWorld.h
+  src/BulletDynamics/Featherstone/btMultiBodyJointFeedback.h
+  src/BulletDynamics/Featherstone/btMultiBodyJointLimitConstraint.h
+  src/BulletDynamics/Featherstone/btMultiBodyJointMotor.h
+  src/BulletDynamics/Featherstone/btMultiBodyLink.h
+  src/BulletDynamics/Featherstone/btMultiBodyLinkCollider.h
+  src/BulletDynamics/Featherstone/btMultiBodyPoint2Point.h
+  src/BulletDynamics/Featherstone/btMultiBodySolverConstraint.h
+  src/BulletDynamics/MLCPSolvers/btDantzigLCP.h
+  src/BulletDynamics/MLCPSolvers/btDantzigSolver.h
+  src/BulletDynamics/MLCPSolvers/btLemkeAlgorithm.h
+  src/BulletDynamics/MLCPSolvers/btLemkeSolver.h
+  src/BulletDynamics/MLCPSolvers/btMLCPSolver.h
+  src/BulletDynamics/MLCPSolvers/btMLCPSolverInterface.h
+  src/BulletDynamics/MLCPSolvers/btPATHSolver.h
+  src/BulletDynamics/MLCPSolvers/btSolveProjectedGaussSeidel.h
+  src/BulletDynamics/Vehicle/btRaycastVehicle.h
+  src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+  src/BulletDynamics/Vehicle/btWheelInfo.h
 
-	src/BulletSoftBody/btDefaultSoftBodySolver.h
-	src/BulletSoftBody/btSoftBody.h
-	src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
-	src/BulletSoftBody/btSoftBodyData.h
-	src/BulletSoftBody/btSoftBodyHelpers.h
-	src/BulletSoftBody/btSoftBodyInternals.h
-	src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
-	src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
-	src/BulletSoftBody/btSoftBodySolvers.h
-	src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
-	src/BulletSoftBody/btSoftRigidDynamicsWorld.h
-	src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
-	src/BulletSoftBody/btSparseSDF.h
+  src/BulletSoftBody/btDefaultSoftBodySolver.h
+  src/BulletSoftBody/btSoftBody.h
+  src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+  src/BulletSoftBody/btSoftBodyData.h
+  src/BulletSoftBody/btSoftBodyHelpers.h
+  src/BulletSoftBody/btSoftBodyInternals.h
+  src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
+  src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+  src/BulletSoftBody/btSoftBodySolvers.h
+  src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+  src/BulletSoftBody/btSoftRigidDynamicsWorld.h
+  src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+  src/BulletSoftBody/btSparseSDF.h
 
-	src/LinearMath/btAabbUtil2.h
-	src/LinearMath/btAlignedAllocator.h
-	src/LinearMath/btAlignedObjectArray.h
-	src/LinearMath/btConvexHull.h
-	src/LinearMath/btConvexHullComputer.h
-	src/LinearMath/btCpuFeatureUtility.h
-	src/LinearMath/btDefaultMotionState.h
-	src/LinearMath/btGeometryUtil.h
-	src/LinearMath/btGrahamScan2dConvexHull.h
-	src/LinearMath/btHashMap.h
-	src/LinearMath/btIDebugDraw.h
-	src/LinearMath/btList.h
-	src/LinearMath/btMatrix3x3.h
-	src/LinearMath/btMatrixX.h
-	src/LinearMath/btMinMax.h
-	src/LinearMath/btMotionState.h
-	src/LinearMath/btPolarDecomposition.h
-	src/LinearMath/btPoolAllocator.h
-	src/LinearMath/btQuadWord.h
-	src/LinearMath/btQuaternion.h
-	src/LinearMath/btQuickprof.h
-	src/LinearMath/btRandom.h
-	src/LinearMath/btScalar.h
-	src/LinearMath/btSerializer.h
-	src/LinearMath/btSpatialAlgebra.h
-	src/LinearMath/btStackAlloc.h
-	src/LinearMath/btTransform.h
-	src/LinearMath/btTransformUtil.h
-	src/LinearMath/btVector3.h
+  src/LinearMath/btAabbUtil2.h
+  src/LinearMath/btAlignedAllocator.h
+  src/LinearMath/btAlignedObjectArray.h
+  src/LinearMath/btConvexHull.h
+  src/LinearMath/btConvexHullComputer.h
+  src/LinearMath/btCpuFeatureUtility.h
+  src/LinearMath/btDefaultMotionState.h
+  src/LinearMath/btGeometryUtil.h
+  src/LinearMath/btGrahamScan2dConvexHull.h
+  src/LinearMath/btHashMap.h
+  src/LinearMath/btIDebugDraw.h
+  src/LinearMath/btList.h
+  src/LinearMath/btMatrix3x3.h
+  src/LinearMath/btMatrixX.h
+  src/LinearMath/btMinMax.h
+  src/LinearMath/btMotionState.h
+  src/LinearMath/btPolarDecomposition.h
+  src/LinearMath/btPoolAllocator.h
+  src/LinearMath/btQuadWord.h
+  src/LinearMath/btQuaternion.h
+  src/LinearMath/btQuickprof.h
+  src/LinearMath/btRandom.h
+  src/LinearMath/btScalar.h
+  src/LinearMath/btSerializer.h
+  src/LinearMath/btSpatialAlgebra.h
+  src/LinearMath/btStackAlloc.h
+  src/LinearMath/btTransform.h
+  src/LinearMath/btTransformUtil.h
+  src/LinearMath/btVector3.h
 
-	src/btBulletCollisionCommon.h
-	src/btBulletDynamicsCommon.h
-	src/Bullet-C-Api.h
+  src/btBulletCollisionCommon.h
+  src/btBulletDynamicsCommon.h
+  src/Bullet-C-Api.h
 )
 
 set(LIB
 )
 
 if(CMAKE_COMPILER_IS_GNUCXX)
-	# needed for gcc 4.6+
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
+  # needed for gcc 4.6+
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
 endif()
 
 blender_add_lib(extern_bullet "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/extern/ceres/CMakeLists.txt b/extern/ceres/CMakeLists.txt
index d91e64b8fd099d6d90151575101c037bd1eda0ab..bd3d7f7dab47330e76c1955d814169eef1827c55 100644
--- a/extern/ceres/CMakeLists.txt
+++ b/extern/ceres/CMakeLists.txt
@@ -23,291 +23,291 @@
 #       in that script too
 
 set(INC
-	.
-	include
-	internal
-	config
-	../gflags/src
+  .
+  include
+  internal
+  config
+  ../gflags/src
 )
 
 set(INC_SYS
-	${EIGEN3_INCLUDE_DIRS}
-	${GFLAGS_INCLUDE_DIRS}
-	${GLOG_INCLUDE_DIRS}
+  ${EIGEN3_INCLUDE_DIRS}
+  ${GFLAGS_INCLUDE_DIRS}
+  ${GLOG_INCLUDE_DIRS}
 )
 
 set(SRC
-	internal/ceres/array_utils.cc
-	internal/ceres/blas.cc
-	internal/ceres/block_evaluate_preparer.cc
-	internal/ceres/block_jacobian_writer.cc
-	internal/ceres/block_jacobi_preconditioner.cc
-	internal/ceres/block_random_access_dense_matrix.cc
-	internal/ceres/block_random_access_diagonal_matrix.cc
-	internal/ceres/block_random_access_matrix.cc
-	internal/ceres/block_random_access_sparse_matrix.cc
-	internal/ceres/block_sparse_matrix.cc
-	internal/ceres/block_structure.cc
-	internal/ceres/callbacks.cc
-	internal/ceres/c_api.cc
-	internal/ceres/cgnr_solver.cc
-	internal/ceres/compressed_col_sparse_matrix_utils.cc
-	internal/ceres/compressed_row_jacobian_writer.cc
-	internal/ceres/compressed_row_sparse_matrix.cc
-	internal/ceres/conditioned_cost_function.cc
-	internal/ceres/conjugate_gradients_solver.cc
-	internal/ceres/coordinate_descent_minimizer.cc
-	internal/ceres/corrector.cc
-	internal/ceres/covariance.cc
-	internal/ceres/covariance_impl.cc
-	internal/ceres/dense_normal_cholesky_solver.cc
-	internal/ceres/dense_qr_solver.cc
-	internal/ceres/dense_sparse_matrix.cc
-	internal/ceres/detect_structure.cc
-	internal/ceres/dogleg_strategy.cc
-	internal/ceres/dynamic_compressed_row_jacobian_writer.cc
-	internal/ceres/dynamic_compressed_row_sparse_matrix.cc
-	internal/ceres/evaluator.cc
-	internal/ceres/file.cc
-	internal/ceres/generated/partitioned_matrix_view_d_d_d.cc
-	internal/ceres/generated/schur_eliminator_d_d_d.cc
-	internal/ceres/gradient_checker.cc
-	internal/ceres/gradient_checking_cost_function.cc
-	internal/ceres/gradient_problem.cc
-	internal/ceres/gradient_problem_solver.cc
-	internal/ceres/implicit_schur_complement.cc
-	internal/ceres/is_close.cc
-	internal/ceres/iterative_schur_complement_solver.cc
-	internal/ceres/lapack.cc
-	internal/ceres/levenberg_marquardt_strategy.cc
-	internal/ceres/linear_least_squares_problems.cc
-	internal/ceres/linear_operator.cc
-	internal/ceres/linear_solver.cc
-	internal/ceres/line_search.cc
-	internal/ceres/line_search_direction.cc
-	internal/ceres/line_search_minimizer.cc
-	internal/ceres/line_search_preprocessor.cc
-	internal/ceres/local_parameterization.cc
-	internal/ceres/loss_function.cc
-	internal/ceres/low_rank_inverse_hessian.cc
-	internal/ceres/minimizer.cc
-	internal/ceres/normal_prior.cc
-	internal/ceres/parameter_block_ordering.cc
-	internal/ceres/partitioned_matrix_view.cc
-	internal/ceres/polynomial.cc
-	internal/ceres/preconditioner.cc
-	internal/ceres/preprocessor.cc
-	internal/ceres/problem.cc
-	internal/ceres/problem_impl.cc
-	internal/ceres/program.cc
-	internal/ceres/reorder_program.cc
-	internal/ceres/residual_block.cc
-	internal/ceres/residual_block_utils.cc
-	internal/ceres/schur_complement_solver.cc
-	internal/ceres/schur_eliminator.cc
-	internal/ceres/schur_jacobi_preconditioner.cc
-	internal/ceres/scratch_evaluate_preparer.cc
-	internal/ceres/solver.cc
-	internal/ceres/solver_utils.cc
-	internal/ceres/sparse_matrix.cc
-	internal/ceres/sparse_normal_cholesky_solver.cc
-	internal/ceres/split.cc
-	internal/ceres/stringprintf.cc
-	internal/ceres/triplet_sparse_matrix.cc
-	internal/ceres/trust_region_minimizer.cc
-	internal/ceres/trust_region_preprocessor.cc
-	internal/ceres/trust_region_step_evaluator.cc
-	internal/ceres/trust_region_strategy.cc
-	internal/ceres/types.cc
-	internal/ceres/wall_time.cc
+  internal/ceres/array_utils.cc
+  internal/ceres/blas.cc
+  internal/ceres/block_evaluate_preparer.cc
+  internal/ceres/block_jacobian_writer.cc
+  internal/ceres/block_jacobi_preconditioner.cc
+  internal/ceres/block_random_access_dense_matrix.cc
+  internal/ceres/block_random_access_diagonal_matrix.cc
+  internal/ceres/block_random_access_matrix.cc
+  internal/ceres/block_random_access_sparse_matrix.cc
+  internal/ceres/block_sparse_matrix.cc
+  internal/ceres/block_structure.cc
+  internal/ceres/callbacks.cc
+  internal/ceres/c_api.cc
+  internal/ceres/cgnr_solver.cc
+  internal/ceres/compressed_col_sparse_matrix_utils.cc
+  internal/ceres/compressed_row_jacobian_writer.cc
+  internal/ceres/compressed_row_sparse_matrix.cc
+  internal/ceres/conditioned_cost_function.cc
+  internal/ceres/conjugate_gradients_solver.cc
+  internal/ceres/coordinate_descent_minimizer.cc
+  internal/ceres/corrector.cc
+  internal/ceres/covariance.cc
+  internal/ceres/covariance_impl.cc
+  internal/ceres/dense_normal_cholesky_solver.cc
+  internal/ceres/dense_qr_solver.cc
+  internal/ceres/dense_sparse_matrix.cc
+  internal/ceres/detect_structure.cc
+  internal/ceres/dogleg_strategy.cc
+  internal/ceres/dynamic_compressed_row_jacobian_writer.cc
+  internal/ceres/dynamic_compressed_row_sparse_matrix.cc
+  internal/ceres/evaluator.cc
+  internal/ceres/file.cc
+  internal/ceres/generated/partitioned_matrix_view_d_d_d.cc
+  internal/ceres/generated/schur_eliminator_d_d_d.cc
+  internal/ceres/gradient_checker.cc
+  internal/ceres/gradient_checking_cost_function.cc
+  internal/ceres/gradient_problem.cc
+  internal/ceres/gradient_problem_solver.cc
+  internal/ceres/implicit_schur_complement.cc
+  internal/ceres/is_close.cc
+  internal/ceres/iterative_schur_complement_solver.cc
+  internal/ceres/lapack.cc
+  internal/ceres/levenberg_marquardt_strategy.cc
+  internal/ceres/linear_least_squares_problems.cc
+  internal/ceres/linear_operator.cc
+  internal/ceres/linear_solver.cc
+  internal/ceres/line_search.cc
+  internal/ceres/line_search_direction.cc
+  internal/ceres/line_search_minimizer.cc
+  internal/ceres/line_search_preprocessor.cc
+  internal/ceres/local_parameterization.cc
+  internal/ceres/loss_function.cc
+  internal/ceres/low_rank_inverse_hessian.cc
+  internal/ceres/minimizer.cc
+  internal/ceres/normal_prior.cc
+  internal/ceres/parameter_block_ordering.cc
+  internal/ceres/partitioned_matrix_view.cc
+  internal/ceres/polynomial.cc
+  internal/ceres/preconditioner.cc
+  internal/ceres/preprocessor.cc
+  internal/ceres/problem.cc
+  internal/ceres/problem_impl.cc
+  internal/ceres/program.cc
+  internal/ceres/reorder_program.cc
+  internal/ceres/residual_block.cc
+  internal/ceres/residual_block_utils.cc
+  internal/ceres/schur_complement_solver.cc
+  internal/ceres/schur_eliminator.cc
+  internal/ceres/schur_jacobi_preconditioner.cc
+  internal/ceres/scratch_evaluate_preparer.cc
+  internal/ceres/solver.cc
+  internal/ceres/solver_utils.cc
+  internal/ceres/sparse_matrix.cc
+  internal/ceres/sparse_normal_cholesky_solver.cc
+  internal/ceres/split.cc
+  internal/ceres/stringprintf.cc
+  internal/ceres/triplet_sparse_matrix.cc
+  internal/ceres/trust_region_minimizer.cc
+  internal/ceres/trust_region_preprocessor.cc
+  internal/ceres/trust_region_step_evaluator.cc
+  internal/ceres/trust_region_strategy.cc
+  internal/ceres/types.cc
+  internal/ceres/wall_time.cc
 
-	include/ceres/autodiff_cost_function.h
-	include/ceres/autodiff_local_parameterization.h
-	include/ceres/c_api.h
-	include/ceres/ceres.h
-	include/ceres/conditioned_cost_function.h
-	include/ceres/cost_function.h
-	include/ceres/cost_function_to_functor.h
-	include/ceres/covariance.h
-	include/ceres/crs_matrix.h
-	include/ceres/dynamic_autodiff_cost_function.h
-	include/ceres/dynamic_cost_function_to_functor.h
-	include/ceres/dynamic_numeric_diff_cost_function.h
-	include/ceres/fpclassify.h
-	include/ceres/gradient_checker.h
-	include/ceres/gradient_problem.h
-	include/ceres/gradient_problem_solver.h
-	include/ceres/internal/autodiff.h
-	include/ceres/internal/disable_warnings.h
-	include/ceres/internal/eigen.h
-	include/ceres/internal/fixed_array.h
-	include/ceres/internal/macros.h
-	include/ceres/internal/manual_constructor.h
-	include/ceres/internal/numeric_diff.h
-	include/ceres/internal/port.h
-	include/ceres/internal/reenable_warnings.h
-	include/ceres/internal/scoped_ptr.h
-	include/ceres/internal/variadic_evaluate.h
-	include/ceres/iteration_callback.h
-	include/ceres/jet.h
-	include/ceres/local_parameterization.h
-	include/ceres/loss_function.h
-	include/ceres/normal_prior.h
-	include/ceres/numeric_diff_cost_function.h
-	include/ceres/numeric_diff_options.h
-	include/ceres/ordered_groups.h
-	include/ceres/problem.h
-	include/ceres/rotation.h
-	include/ceres/sized_cost_function.h
-	include/ceres/solver.h
-	include/ceres/types.h
-	include/ceres/version.h
-	internal/ceres/array_utils.h
-	internal/ceres/blas.h
-	internal/ceres/block_evaluate_preparer.h
-	internal/ceres/block_jacobian_writer.h
-	internal/ceres/block_jacobi_preconditioner.h
-	internal/ceres/block_random_access_dense_matrix.h
-	internal/ceres/block_random_access_diagonal_matrix.h
-	internal/ceres/block_random_access_matrix.h
-	internal/ceres/block_random_access_sparse_matrix.h
-	internal/ceres/block_sparse_matrix.h
-	internal/ceres/block_structure.h
-	internal/ceres/callbacks.h
-	internal/ceres/casts.h
-	internal/ceres/cgnr_linear_operator.h
-	internal/ceres/cgnr_solver.h
-	internal/ceres/collections_port.h
-	internal/ceres/compressed_col_sparse_matrix_utils.h
-	internal/ceres/compressed_row_jacobian_writer.h
-	internal/ceres/compressed_row_sparse_matrix.h
-	internal/ceres/conjugate_gradients_solver.h
-	internal/ceres/coordinate_descent_minimizer.h
-	internal/ceres/corrector.h
-	internal/ceres/covariance_impl.h
-	internal/ceres/cxsparse.h
-	internal/ceres/dense_jacobian_writer.h
-	internal/ceres/dense_normal_cholesky_solver.h
-	internal/ceres/dense_qr_solver.h
-	internal/ceres/dense_sparse_matrix.h
-	internal/ceres/detect_structure.h
-	internal/ceres/dogleg_strategy.h
-	internal/ceres/dynamic_compressed_row_finalizer.h
-	internal/ceres/dynamic_compressed_row_jacobian_writer.h
-	internal/ceres/dynamic_compressed_row_sparse_matrix.h
-	internal/ceres/evaluator.h
-	internal/ceres/execution_summary.h
-	internal/ceres/file.h
-	internal/ceres/gradient_checking_cost_function.h
-	internal/ceres/gradient_problem_evaluator.h
-	internal/ceres/graph_algorithms.h
-	internal/ceres/graph.h
-	internal/ceres/householder_vector.h
-	internal/ceres/implicit_schur_complement.h
-	internal/ceres/integral_types.h
-	internal/ceres/is_close.h
-	internal/ceres/iterative_schur_complement_solver.h
-	internal/ceres/lapack.h
-	internal/ceres/levenberg_marquardt_strategy.h
-	internal/ceres/linear_least_squares_problems.h
-	internal/ceres/linear_operator.h
-	internal/ceres/linear_solver.h
-	internal/ceres/line_search_direction.h
-	internal/ceres/line_search.h
-	internal/ceres/line_search_minimizer.h
-	internal/ceres/line_search_preprocessor.h
-	internal/ceres/low_rank_inverse_hessian.h
-	internal/ceres/map_util.h
-	internal/ceres/minimizer.h
-	internal/ceres/mutex.h
-	internal/ceres/parameter_block.h
-	internal/ceres/parameter_block_ordering.h
-	internal/ceres/partitioned_matrix_view.h
-	internal/ceres/partitioned_matrix_view_impl.h
-	internal/ceres/polynomial.h
-	internal/ceres/preconditioner.h
-	internal/ceres/preprocessor.h
-	internal/ceres/problem_impl.h
-	internal/ceres/program_evaluator.h
-	internal/ceres/program.h
-	internal/ceres/random.h
-	internal/ceres/reorder_program.h
-	internal/ceres/residual_block.h
-	internal/ceres/residual_block_utils.h
-	internal/ceres/schur_complement_solver.h
-	internal/ceres/schur_eliminator.h
-	internal/ceres/schur_eliminator_impl.h
-	internal/ceres/schur_jacobi_preconditioner.h
-	internal/ceres/scratch_evaluate_preparer.h
-	internal/ceres/small_blas.h
-	internal/ceres/solver_utils.h
-	internal/ceres/sparse_matrix.h
-	internal/ceres/sparse_normal_cholesky_solver.h
-	internal/ceres/split.h
-	internal/ceres/stl_util.h
-	internal/ceres/stringprintf.h
-	internal/ceres/suitesparse.h
-	internal/ceres/triplet_sparse_matrix.h
-	internal/ceres/trust_region_minimizer.h
-	internal/ceres/trust_region_preprocessor.h
-	internal/ceres/trust_region_step_evaluator.h
-	internal/ceres/trust_region_strategy.h
-	internal/ceres/visibility_based_preconditioner.h
-	internal/ceres/wall_time.h
+  include/ceres/autodiff_cost_function.h
+  include/ceres/autodiff_local_parameterization.h
+  include/ceres/c_api.h
+  include/ceres/ceres.h
+  include/ceres/conditioned_cost_function.h
+  include/ceres/cost_function.h
+  include/ceres/cost_function_to_functor.h
+  include/ceres/covariance.h
+  include/ceres/crs_matrix.h
+  include/ceres/dynamic_autodiff_cost_function.h
+  include/ceres/dynamic_cost_function_to_functor.h
+  include/ceres/dynamic_numeric_diff_cost_function.h
+  include/ceres/fpclassify.h
+  include/ceres/gradient_checker.h
+  include/ceres/gradient_problem.h
+  include/ceres/gradient_problem_solver.h
+  include/ceres/internal/autodiff.h
+  include/ceres/internal/disable_warnings.h
+  include/ceres/internal/eigen.h
+  include/ceres/internal/fixed_array.h
+  include/ceres/internal/macros.h
+  include/ceres/internal/manual_constructor.h
+  include/ceres/internal/numeric_diff.h
+  include/ceres/internal/port.h
+  include/ceres/internal/reenable_warnings.h
+  include/ceres/internal/scoped_ptr.h
+  include/ceres/internal/variadic_evaluate.h
+  include/ceres/iteration_callback.h
+  include/ceres/jet.h
+  include/ceres/local_parameterization.h
+  include/ceres/loss_function.h
+  include/ceres/normal_prior.h
+  include/ceres/numeric_diff_cost_function.h
+  include/ceres/numeric_diff_options.h
+  include/ceres/ordered_groups.h
+  include/ceres/problem.h
+  include/ceres/rotation.h
+  include/ceres/sized_cost_function.h
+  include/ceres/solver.h
+  include/ceres/types.h
+  include/ceres/version.h
+  internal/ceres/array_utils.h
+  internal/ceres/blas.h
+  internal/ceres/block_evaluate_preparer.h
+  internal/ceres/block_jacobian_writer.h
+  internal/ceres/block_jacobi_preconditioner.h
+  internal/ceres/block_random_access_dense_matrix.h
+  internal/ceres/block_random_access_diagonal_matrix.h
+  internal/ceres/block_random_access_matrix.h
+  internal/ceres/block_random_access_sparse_matrix.h
+  internal/ceres/block_sparse_matrix.h
+  internal/ceres/block_structure.h
+  internal/ceres/callbacks.h
+  internal/ceres/casts.h
+  internal/ceres/cgnr_linear_operator.h
+  internal/ceres/cgnr_solver.h
+  internal/ceres/collections_port.h
+  internal/ceres/compressed_col_sparse_matrix_utils.h
+  internal/ceres/compressed_row_jacobian_writer.h
+  internal/ceres/compressed_row_sparse_matrix.h
+  internal/ceres/conjugate_gradients_solver.h
+  internal/ceres/coordinate_descent_minimizer.h
+  internal/ceres/corrector.h
+  internal/ceres/covariance_impl.h
+  internal/ceres/cxsparse.h
+  internal/ceres/dense_jacobian_writer.h
+  internal/ceres/dense_normal_cholesky_solver.h
+  internal/ceres/dense_qr_solver.h
+  internal/ceres/dense_sparse_matrix.h
+  internal/ceres/detect_structure.h
+  internal/ceres/dogleg_strategy.h
+  internal/ceres/dynamic_compressed_row_finalizer.h
+  internal/ceres/dynamic_compressed_row_jacobian_writer.h
+  internal/ceres/dynamic_compressed_row_sparse_matrix.h
+  internal/ceres/evaluator.h
+  internal/ceres/execution_summary.h
+  internal/ceres/file.h
+  internal/ceres/gradient_checking_cost_function.h
+  internal/ceres/gradient_problem_evaluator.h
+  internal/ceres/graph_algorithms.h
+  internal/ceres/graph.h
+  internal/ceres/householder_vector.h
+  internal/ceres/implicit_schur_complement.h
+  internal/ceres/integral_types.h
+  internal/ceres/is_close.h
+  internal/ceres/iterative_schur_complement_solver.h
+  internal/ceres/lapack.h
+  internal/ceres/levenberg_marquardt_strategy.h
+  internal/ceres/linear_least_squares_problems.h
+  internal/ceres/linear_operator.h
+  internal/ceres/linear_solver.h
+  internal/ceres/line_search_direction.h
+  internal/ceres/line_search.h
+  internal/ceres/line_search_minimizer.h
+  internal/ceres/line_search_preprocessor.h
+  internal/ceres/low_rank_inverse_hessian.h
+  internal/ceres/map_util.h
+  internal/ceres/minimizer.h
+  internal/ceres/mutex.h
+  internal/ceres/parameter_block.h
+  internal/ceres/parameter_block_ordering.h
+  internal/ceres/partitioned_matrix_view.h
+  internal/ceres/partitioned_matrix_view_impl.h
+  internal/ceres/polynomial.h
+  internal/ceres/preconditioner.h
+  internal/ceres/preprocessor.h
+  internal/ceres/problem_impl.h
+  internal/ceres/program_evaluator.h
+  internal/ceres/program.h
+  internal/ceres/random.h
+  internal/ceres/reorder_program.h
+  internal/ceres/residual_block.h
+  internal/ceres/residual_block_utils.h
+  internal/ceres/schur_complement_solver.h
+  internal/ceres/schur_eliminator.h
+  internal/ceres/schur_eliminator_impl.h
+  internal/ceres/schur_jacobi_preconditioner.h
+  internal/ceres/scratch_evaluate_preparer.h
+  internal/ceres/small_blas.h
+  internal/ceres/solver_utils.h
+  internal/ceres/sparse_matrix.h
+  internal/ceres/sparse_normal_cholesky_solver.h
+  internal/ceres/split.h
+  internal/ceres/stl_util.h
+  internal/ceres/stringprintf.h
+  internal/ceres/suitesparse.h
+  internal/ceres/triplet_sparse_matrix.h
+  internal/ceres/trust_region_minimizer.h
+  internal/ceres/trust_region_preprocessor.h
+  internal/ceres/trust_region_step_evaluator.h
+  internal/ceres/trust_region_strategy.h
+  internal/ceres/visibility_based_preconditioner.h
+  internal/ceres/wall_time.h
 )
 
 set(LIB
 )
 
 if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
-	list(APPEND LIB
-		extern_glog
-	)
+  list(APPEND LIB
+    extern_glog
+  )
 endif()
 
 if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
-	list(APPEND SRC
-		internal/ceres/generated/partitioned_matrix_view_2_2_2.cc
-		internal/ceres/generated/partitioned_matrix_view_2_2_3.cc
-		internal/ceres/generated/partitioned_matrix_view_2_2_4.cc
-		internal/ceres/generated/partitioned_matrix_view_2_2_d.cc
-		internal/ceres/generated/partitioned_matrix_view_2_3_3.cc
-		internal/ceres/generated/partitioned_matrix_view_2_3_4.cc
-		internal/ceres/generated/partitioned_matrix_view_2_3_6.cc
-		internal/ceres/generated/partitioned_matrix_view_2_3_9.cc
-		internal/ceres/generated/partitioned_matrix_view_2_3_d.cc
-		internal/ceres/generated/partitioned_matrix_view_2_4_3.cc
-		internal/ceres/generated/partitioned_matrix_view_2_4_4.cc
-		internal/ceres/generated/partitioned_matrix_view_2_4_8.cc
-		internal/ceres/generated/partitioned_matrix_view_2_4_9.cc
-		internal/ceres/generated/partitioned_matrix_view_2_4_d.cc
-		internal/ceres/generated/partitioned_matrix_view_2_d_d.cc
-		internal/ceres/generated/partitioned_matrix_view_4_4_2.cc
-		internal/ceres/generated/partitioned_matrix_view_4_4_3.cc
-		internal/ceres/generated/partitioned_matrix_view_4_4_4.cc
-		internal/ceres/generated/partitioned_matrix_view_4_4_d.cc
-		internal/ceres/generated/schur_eliminator_2_2_2.cc
-		internal/ceres/generated/schur_eliminator_2_2_3.cc
-		internal/ceres/generated/schur_eliminator_2_2_4.cc
-		internal/ceres/generated/schur_eliminator_2_2_d.cc
-		internal/ceres/generated/schur_eliminator_2_3_3.cc
-		internal/ceres/generated/schur_eliminator_2_3_4.cc
-		internal/ceres/generated/schur_eliminator_2_3_6.cc
-		internal/ceres/generated/schur_eliminator_2_3_9.cc
-		internal/ceres/generated/schur_eliminator_2_3_d.cc
-		internal/ceres/generated/schur_eliminator_2_4_3.cc
-		internal/ceres/generated/schur_eliminator_2_4_4.cc
-		internal/ceres/generated/schur_eliminator_2_4_8.cc
-		internal/ceres/generated/schur_eliminator_2_4_9.cc
-		internal/ceres/generated/schur_eliminator_2_4_d.cc
-		internal/ceres/generated/schur_eliminator_2_d_d.cc
-		internal/ceres/generated/schur_eliminator_4_4_2.cc
-		internal/ceres/generated/schur_eliminator_4_4_3.cc
-		internal/ceres/generated/schur_eliminator_4_4_4.cc
-		internal/ceres/generated/schur_eliminator_4_4_d.cc
-	)
+  list(APPEND SRC
+    internal/ceres/generated/partitioned_matrix_view_2_2_2.cc
+    internal/ceres/generated/partitioned_matrix_view_2_2_3.cc
+    internal/ceres/generated/partitioned_matrix_view_2_2_4.cc
+    internal/ceres/generated/partitioned_matrix_view_2_2_d.cc
+    internal/ceres/generated/partitioned_matrix_view_2_3_3.cc
+    internal/ceres/generated/partitioned_matrix_view_2_3_4.cc
+    internal/ceres/generated/partitioned_matrix_view_2_3_6.cc
+    internal/ceres/generated/partitioned_matrix_view_2_3_9.cc
+    internal/ceres/generated/partitioned_matrix_view_2_3_d.cc
+    internal/ceres/generated/partitioned_matrix_view_2_4_3.cc
+    internal/ceres/generated/partitioned_matrix_view_2_4_4.cc
+    internal/ceres/generated/partitioned_matrix_view_2_4_8.cc
+    internal/ceres/generated/partitioned_matrix_view_2_4_9.cc
+    internal/ceres/generated/partitioned_matrix_view_2_4_d.cc
+    internal/ceres/generated/partitioned_matrix_view_2_d_d.cc
+    internal/ceres/generated/partitioned_matrix_view_4_4_2.cc
+    internal/ceres/generated/partitioned_matrix_view_4_4_3.cc
+    internal/ceres/generated/partitioned_matrix_view_4_4_4.cc
+    internal/ceres/generated/partitioned_matrix_view_4_4_d.cc
+    internal/ceres/generated/schur_eliminator_2_2_2.cc
+    internal/ceres/generated/schur_eliminator_2_2_3.cc
+    internal/ceres/generated/schur_eliminator_2_2_4.cc
+    internal/ceres/generated/schur_eliminator_2_2_d.cc
+    internal/ceres/generated/schur_eliminator_2_3_3.cc
+    internal/ceres/generated/schur_eliminator_2_3_4.cc
+    internal/ceres/generated/schur_eliminator_2_3_6.cc
+    internal/ceres/generated/schur_eliminator_2_3_9.cc
+    internal/ceres/generated/schur_eliminator_2_3_d.cc
+    internal/ceres/generated/schur_eliminator_2_4_3.cc
+    internal/ceres/generated/schur_eliminator_2_4_4.cc
+    internal/ceres/generated/schur_eliminator_2_4_8.cc
+    internal/ceres/generated/schur_eliminator_2_4_9.cc
+    internal/ceres/generated/schur_eliminator_2_4_d.cc
+    internal/ceres/generated/schur_eliminator_2_d_d.cc
+    internal/ceres/generated/schur_eliminator_4_4_2.cc
+    internal/ceres/generated/schur_eliminator_4_4_3.cc
+    internal/ceres/generated/schur_eliminator_4_4_4.cc
+    internal/ceres/generated/schur_eliminator_4_4_d.cc
+  )
 else()
-	add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
+  add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
 endif()
 
 add_definitions(${GFLAGS_DEFINES})
@@ -315,17 +315,17 @@ add_definitions(${GLOG_DEFINES})
 add_definitions(${CERES_DEFINES})
 
 add_definitions(
-	-DCERES_HAVE_PTHREAD
-	-DCERES_NO_SUITESPARSE
-	-DCERES_NO_CXSPARSE
-	-DCERES_NO_LAPACK
-	-DCERES_HAVE_RWLOCK
+  -DCERES_HAVE_PTHREAD
+  -DCERES_NO_SUITESPARSE
+  -DCERES_NO_CXSPARSE
+  -DCERES_NO_LAPACK
+  -DCERES_HAVE_RWLOCK
 )
 
 if(WITH_OPENMP)
-	add_definitions(
-		-DCERES_USE_OPENMP
-	)
+  add_definitions(
+    -DCERES_USE_OPENMP
+  )
 endif()
 
 blender_add_lib(extern_ceres "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/extern/ceres/bundle.sh b/extern/ceres/bundle.sh
index 561e2b404c179483e85f857936b89d20341c982c..bf5a43852b578a5ce5a8d42a92c01ad0a96cfd0f 100755
--- a/extern/ceres/bundle.sh
+++ b/extern/ceres/bundle.sh
@@ -116,17 +116,17 @@ cat > CMakeLists.txt << EOF
 #       in that script too
 
 set(INC
-	.
-	include
-	internal
-	config
-	../gflags/src
+  .
+  include
+  internal
+  config
+  ../gflags/src
 )
 
 set(INC_SYS
-	\${EIGEN3_INCLUDE_DIRS}
-	\${GFLAGS_INCLUDE_DIRS}
-	\${GLOG_INCLUDE_DIRS}
+  \${EIGEN3_INCLUDE_DIRS}
+  \${GFLAGS_INCLUDE_DIRS}
+  \${GLOG_INCLUDE_DIRS}
 )
 
 set(SRC
@@ -136,15 +136,15 @@ ${headers}
 )
 
 set(LIB
-	extern_glog
+  extern_glog
 )
 
 if(WITH_LIBMV_SCHUR_SPECIALIZATIONS)
-	list(APPEND SRC
+  list(APPEND SRC
 ${generated_sources}
-	)
+  )
 else()
-	add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
+  add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
 endif()
 
 add_definitions(\${GFLAGS_DEFINES})
@@ -152,17 +152,17 @@ add_definitions(\${GLOG_DEFINES})
 add_definitions(\${CERES_DEFINES})
 
 add_definitions(
-	-DCERES_HAVE_PTHREAD
-	-DCERES_NO_SUITESPARSE
-	-DCERES_NO_CXSPARSE
-	-DCERES_NO_LAPACK
-	-DCERES_HAVE_RWLOCK
+  -DCERES_HAVE_PTHREAD
+  -DCERES_NO_SUITESPARSE
+  -DCERES_NO_CXSPARSE
+  -DCERES_NO_LAPACK
+  -DCERES_HAVE_RWLOCK
 )
 
 if(WITH_OPENMP)
-	add_definitions(
-		-DCERES_USE_OPENMP
-	)
+  add_definitions(
+    -DCERES_USE_OPENMP
+  )
 endif()
 
 blender_add_lib(extern_ceres "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
diff --git a/extern/clew/CMakeLists.txt b/extern/clew/CMakeLists.txt
index 806771cb7f4f42b6cb096a16592e6bb1ad07f899..cffbf4e855fd614fd8a016810ec0fb4f0d75d71f 100644
--- a/extern/clew/CMakeLists.txt
+++ b/extern/clew/CMakeLists.txt
@@ -19,8 +19,8 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
-	include
+  .
+  include
 )
 
 set(INC_SYS
@@ -28,8 +28,8 @@ set(INC_SYS
 )
 
 set(SRC
-	include/clew.h
-	src/clew.c
+  include/clew.h
+  src/clew.c
 )
 
 set(LIB
diff --git a/extern/cuew/CMakeLists.txt b/extern/cuew/CMakeLists.txt
index 45d10e29799c84ae97252f15f804dc6cf7044f7d..de54d9642ce94f18f08fd7c73cb095ef81e97f9c 100644
--- a/extern/cuew/CMakeLists.txt
+++ b/extern/cuew/CMakeLists.txt
@@ -19,8 +19,8 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
-	include
+  .
+  include
 )
 
 set(INC_SYS
@@ -28,9 +28,9 @@ set(INC_SYS
 )
 
 set(SRC
-	src/cuew.c
+  src/cuew.c
 
-	include/cuew.h
+  include/cuew.h
 )
 
 set(LIB
diff --git a/extern/curve_fit_nd/CMakeLists.txt b/extern/curve_fit_nd/CMakeLists.txt
index f9264f9b890c9d3925d2873149a549cb41fa9b0a..11b16c8fa8a07030f4600fe92d1da316edf2e9c0 100644
--- a/extern/curve_fit_nd/CMakeLists.txt
+++ b/extern/curve_fit_nd/CMakeLists.txt
@@ -17,7 +17,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
@@ -25,15 +25,15 @@ set(INC_SYS
 )
 
 set(SRC
-	intern/curve_fit_cubic.c
-	intern/curve_fit_cubic_refit.c
-	intern/curve_fit_corners_detect.c
+  intern/curve_fit_cubic.c
+  intern/curve_fit_cubic_refit.c
+  intern/curve_fit_corners_detect.c
 
-	curve_fit_nd.h
-	intern/curve_fit_inline.h
-	intern/generic_alloc_impl.h
-	intern/generic_heap.c
-	intern/generic_heap.h
+  curve_fit_nd.h
+  intern/curve_fit_inline.h
+  intern/generic_alloc_impl.h
+  intern/generic_heap.c
+  intern/generic_heap.h
 )
 
 set(LIB
diff --git a/extern/draco/dracoenc/CMakeLists.txt b/extern/draco/dracoenc/CMakeLists.txt
index 04f54ab929366dd8f390a72e102110e335665694..3d33bdb74c2a80c2a07b83007ff01e3f8f3e334c 100644
--- a/extern/draco/dracoenc/CMakeLists.txt
+++ b/extern/draco/dracoenc/CMakeLists.txt
@@ -1,188 +1,188 @@
 remove_strict_flags()
 
 set(SRC
-	src/draco/animation/keyframe_animation.cc
-	src/draco/animation/keyframe_animation_encoder.cc
-	src/draco/animation/keyframe_animation_encoder.h
-	src/draco/animation/keyframe_animation.h
-	src/draco/attributes/attribute_octahedron_transform.cc
-	src/draco/attributes/attribute_octahedron_transform.h
-	src/draco/attributes/attribute_quantization_transform.cc
-	src/draco/attributes/attribute_quantization_transform.h
-	src/draco/attributes/attribute_transform.cc
-	src/draco/attributes/attribute_transform_data.h
-	src/draco/attributes/attribute_transform.h
-	src/draco/attributes/attribute_transform_type.h
-	src/draco/attributes/geometry_attribute.cc
-	src/draco/attributes/geometry_attribute.h
-	src/draco/attributes/geometry_indices.h
-	src/draco/attributes/point_attribute.cc
-	src/draco/attributes/point_attribute.h
-	src/draco/compression/attributes/attributes_encoder.cc
-	src/draco/compression/attributes/attributes_encoder.h
-	src/draco/compression/attributes/kd_tree_attributes_encoder.cc
-	src/draco/compression/attributes/kd_tree_attributes_encoder.h
-	src/draco/compression/attributes/linear_sequencer.h
-	src/draco/compression/attributes/points_sequencer.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_shared.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_data.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_area.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_base.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_multi_parallelogram_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_shared.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_encoder.h
-	src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_predictor.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_delta_encoder.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_interface.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoding_transform.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_factory.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_interface.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_encoding_transform.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_base.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_encoding_transform.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_base.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_encoding_transform.h
-	src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h
-	src/draco/compression/attributes/sequential_attribute_encoder.cc
-	src/draco/compression/attributes/sequential_attribute_encoder.h
-	src/draco/compression/attributes/sequential_attribute_encoders_controller.cc
-	src/draco/compression/attributes/sequential_attribute_encoders_controller.h
-	src/draco/compression/attributes/sequential_integer_attribute_encoder.cc
-	src/draco/compression/attributes/sequential_integer_attribute_encoder.h
-	src/draco/compression/attributes/sequential_normal_attribute_encoder.cc
-	src/draco/compression/attributes/sequential_normal_attribute_encoder.h
-	src/draco/compression/attributes/sequential_quantization_attribute_encoder.cc
-	src/draco/compression/attributes/sequential_quantization_attribute_encoder.h
-	src/draco/compression/bit_coders/adaptive_rans_bit_coding_shared.h
-	src/draco/compression/bit_coders/adaptive_rans_bit_encoder.cc
-	src/draco/compression/bit_coders/adaptive_rans_bit_encoder.h
-	src/draco/compression/bit_coders/direct_bit_encoder.cc
-	src/draco/compression/bit_coders/direct_bit_encoder.h
-	src/draco/compression/bit_coders/folded_integer_bit_encoder.h
-	src/draco/compression/bit_coders/rans_bit_encoder.cc
-	src/draco/compression/bit_coders/rans_bit_encoder.h
-	src/draco/compression/bit_coders/symbol_bit_encoder.cc
-	src/draco/compression/bit_coders/symbol_bit_encoder.h
-	src/draco/compression/config/compression_shared.h
-	src/draco/compression/config/draco_options.h
-	src/draco/compression/config/encoder_options.h
-	src/draco/compression/config/encoding_features.h
-	src/draco/compression/encode_base.h
-	src/draco/compression/encode.cc
-	src/draco/compression/encode.h
-	src/draco/compression/entropy/ans.h
-	src/draco/compression/entropy/rans_symbol_coding.h
-	src/draco/compression/entropy/rans_symbol_encoder.h
-	src/draco/compression/entropy/shannon_entropy.cc
-	src/draco/compression/entropy/shannon_entropy.h
-	src/draco/compression/entropy/symbol_encoding.cc
-	src/draco/compression/entropy/symbol_encoding.h
-	src/draco/compression/expert_encode.cc
-	src/draco/compression/expert_encode.h
-	src/draco/compression/mesh/mesh_edgebreaker_encoder.cc
-	src/draco/compression/mesh/mesh_edgebreaker_encoder.h
-	src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc
-	src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h
-	src/draco/compression/mesh/mesh_edgebreaker_encoder_impl_interface.h
-	src/draco/compression/mesh/mesh_edgebreaker_shared.h
-	src/draco/compression/mesh/mesh_edgebreaker_traversal_encoder.h
-	src/draco/compression/mesh/mesh_edgebreaker_traversal_predictive_encoder.h
-	src/draco/compression/mesh/mesh_edgebreaker_traversal_valence_encoder.h
-	src/draco/compression/mesh/mesh_encoder.cc
-	src/draco/compression/mesh/mesh_encoder.h
-	src/draco/compression/mesh/mesh_encoder_helpers.h
-	src/draco/compression/mesh/mesh_sequential_encoder.cc
-	src/draco/compression/mesh/mesh_sequential_encoder.h
-	src/draco/compression/mesh/traverser/depth_first_traverser.h
-	src/draco/compression/mesh/traverser/max_prediction_degree_traverser.h
-	src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h
-	src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h
-	src/draco/compression/mesh/traverser/traverser_base.h
-	src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.cc
-	src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h
-	src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.cc
-	src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h
-	src/draco/compression/point_cloud/algorithms/point_cloud_compression_method.h
-	src/draco/compression/point_cloud/algorithms/point_cloud_types.h
-	src/draco/compression/point_cloud/algorithms/quantize_points_3.h
-	src/draco/compression/point_cloud/algorithms/queuing_policy.h
-	src/draco/compression/point_cloud/point_cloud_encoder.cc
-	src/draco/compression/point_cloud/point_cloud_encoder.h
-	src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.cc
-	src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.h
-	src/draco/compression/point_cloud/point_cloud_sequential_encoder.cc
-	src/draco/compression/point_cloud/point_cloud_sequential_encoder.h
-	src/draco/core/bit_utils.cc
-	src/draco/core/bit_utils.h
-	src/draco/core/bounding_box.cc
-	src/draco/core/bounding_box.h
-	src/draco/core/cycle_timer.cc
-	src/draco/core/cycle_timer.h
-	src/draco/core/data_buffer.cc
-	src/draco/core/data_buffer.h
-	src/draco/core/divide.cc
-	src/draco/core/divide.h
-	src/draco/core/draco_index_type.h
-	src/draco/core/draco_index_type_vector.h
-	src/draco/core/draco_types.cc
-	src/draco/core/draco_types.h
-	src/draco/core/encoder_buffer.cc
-	src/draco/core/encoder_buffer.h
-	src/draco/core/hash_utils.cc
-	src/draco/core/hash_utils.h
-	src/draco/core/macros.h
-	src/draco/core/math_utils.h
-	src/draco/core/options.cc
-	src/draco/core/options.h
-	src/draco/core/quantization_utils.cc
-	src/draco/core/quantization_utils.h
-	src/draco/core/status.h
-	src/draco/core/statusor.h
-	src/draco/core/varint_encoding.h
-	src/draco/core/vector_d.h
-	src/draco/mesh/corner_table.cc
-	src/draco/mesh/corner_table.h
-	src/draco/mesh/corner_table_iterators.h
-	src/draco/mesh/mesh_are_equivalent.cc
-	src/draco/mesh/mesh_are_equivalent.h
-	src/draco/mesh/mesh_attribute_corner_table.cc
-	src/draco/mesh/mesh_attribute_corner_table.h
-	src/draco/mesh/mesh.cc
-	src/draco/mesh/mesh_cleanup.cc
-	src/draco/mesh/mesh_cleanup.h
-	src/draco/mesh/mesh.h
-	src/draco/mesh/mesh_misc_functions.cc
-	src/draco/mesh/mesh_misc_functions.h
-	src/draco/mesh/mesh_stripifier.cc
-	src/draco/mesh/mesh_stripifier.h
-	src/draco/mesh/triangle_soup_mesh_builder.cc
-	src/draco/mesh/triangle_soup_mesh_builder.h
-	src/draco/mesh/valence_cache.h
-	src/draco/metadata/geometry_metadata.cc
-	src/draco/metadata/geometry_metadata.h
-	src/draco/metadata/metadata.cc
-	src/draco/metadata/metadata_encoder.cc
-	src/draco/metadata/metadata_encoder.h
-	src/draco/metadata/metadata.h
-	src/draco/point_cloud/point_cloud_builder.cc
-	src/draco/point_cloud/point_cloud_builder.h
-	src/draco/point_cloud/point_cloud.cc
-	src/draco/point_cloud/point_cloud.h
+  src/draco/animation/keyframe_animation.cc
+  src/draco/animation/keyframe_animation_encoder.cc
+  src/draco/animation/keyframe_animation_encoder.h
+  src/draco/animation/keyframe_animation.h
+  src/draco/attributes/attribute_octahedron_transform.cc
+  src/draco/attributes/attribute_octahedron_transform.h
+  src/draco/attributes/attribute_quantization_transform.cc
+  src/draco/attributes/attribute_quantization_transform.h
+  src/draco/attributes/attribute_transform.cc
+  src/draco/attributes/attribute_transform_data.h
+  src/draco/attributes/attribute_transform.h
+  src/draco/attributes/attribute_transform_type.h
+  src/draco/attributes/geometry_attribute.cc
+  src/draco/attributes/geometry_attribute.h
+  src/draco/attributes/geometry_indices.h
+  src/draco/attributes/point_attribute.cc
+  src/draco/attributes/point_attribute.h
+  src/draco/compression/attributes/attributes_encoder.cc
+  src/draco/compression/attributes/attributes_encoder.h
+  src/draco/compression/attributes/kd_tree_attributes_encoder.cc
+  src/draco/compression/attributes/kd_tree_attributes_encoder.h
+  src/draco/compression/attributes/linear_sequencer.h
+  src/draco/compression/attributes/points_sequencer.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_constrained_multi_parallelogram_shared.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_data.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_area.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_geometric_normal_predictor_base.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_multi_parallelogram_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_parallelogram_shared.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_encoder.h
+  src/draco/compression/attributes/prediction_schemes/mesh_prediction_scheme_tex_coords_portable_predictor.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_delta_encoder.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_interface.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoding_transform.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_factory.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_interface.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_encoding_transform.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_base.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_encoding_transform.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_base.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_encoding_transform.h
+  src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h
+  src/draco/compression/attributes/sequential_attribute_encoder.cc
+  src/draco/compression/attributes/sequential_attribute_encoder.h
+  src/draco/compression/attributes/sequential_attribute_encoders_controller.cc
+  src/draco/compression/attributes/sequential_attribute_encoders_controller.h
+  src/draco/compression/attributes/sequential_integer_attribute_encoder.cc
+  src/draco/compression/attributes/sequential_integer_attribute_encoder.h
+  src/draco/compression/attributes/sequential_normal_attribute_encoder.cc
+  src/draco/compression/attributes/sequential_normal_attribute_encoder.h
+  src/draco/compression/attributes/sequential_quantization_attribute_encoder.cc
+  src/draco/compression/attributes/sequential_quantization_attribute_encoder.h
+  src/draco/compression/bit_coders/adaptive_rans_bit_coding_shared.h
+  src/draco/compression/bit_coders/adaptive_rans_bit_encoder.cc
+  src/draco/compression/bit_coders/adaptive_rans_bit_encoder.h
+  src/draco/compression/bit_coders/direct_bit_encoder.cc
+  src/draco/compression/bit_coders/direct_bit_encoder.h
+  src/draco/compression/bit_coders/folded_integer_bit_encoder.h
+  src/draco/compression/bit_coders/rans_bit_encoder.cc
+  src/draco/compression/bit_coders/rans_bit_encoder.h
+  src/draco/compression/bit_coders/symbol_bit_encoder.cc
+  src/draco/compression/bit_coders/symbol_bit_encoder.h
+  src/draco/compression/config/compression_shared.h
+  src/draco/compression/config/draco_options.h
+  src/draco/compression/config/encoder_options.h
+  src/draco/compression/config/encoding_features.h
+  src/draco/compression/encode_base.h
+  src/draco/compression/encode.cc
+  src/draco/compression/encode.h
+  src/draco/compression/entropy/ans.h
+  src/draco/compression/entropy/rans_symbol_coding.h
+  src/draco/compression/entropy/rans_symbol_encoder.h
+  src/draco/compression/entropy/shannon_entropy.cc
+  src/draco/compression/entropy/shannon_entropy.h
+  src/draco/compression/entropy/symbol_encoding.cc
+  src/draco/compression/entropy/symbol_encoding.h
+  src/draco/compression/expert_encode.cc
+  src/draco/compression/expert_encode.h
+  src/draco/compression/mesh/mesh_edgebreaker_encoder.cc
+  src/draco/compression/mesh/mesh_edgebreaker_encoder.h
+  src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc
+  src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h
+  src/draco/compression/mesh/mesh_edgebreaker_encoder_impl_interface.h
+  src/draco/compression/mesh/mesh_edgebreaker_shared.h
+  src/draco/compression/mesh/mesh_edgebreaker_traversal_encoder.h
+  src/draco/compression/mesh/mesh_edgebreaker_traversal_predictive_encoder.h
+  src/draco/compression/mesh/mesh_edgebreaker_traversal_valence_encoder.h
+  src/draco/compression/mesh/mesh_encoder.cc
+  src/draco/compression/mesh/mesh_encoder.h
+  src/draco/compression/mesh/mesh_encoder_helpers.h
+  src/draco/compression/mesh/mesh_sequential_encoder.cc
+  src/draco/compression/mesh/mesh_sequential_encoder.h
+  src/draco/compression/mesh/traverser/depth_first_traverser.h
+  src/draco/compression/mesh/traverser/max_prediction_degree_traverser.h
+  src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h
+  src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h
+  src/draco/compression/mesh/traverser/traverser_base.h
+  src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.cc
+  src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h
+  src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.cc
+  src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h
+  src/draco/compression/point_cloud/algorithms/point_cloud_compression_method.h
+  src/draco/compression/point_cloud/algorithms/point_cloud_types.h
+  src/draco/compression/point_cloud/algorithms/quantize_points_3.h
+  src/draco/compression/point_cloud/algorithms/queuing_policy.h
+  src/draco/compression/point_cloud/point_cloud_encoder.cc
+  src/draco/compression/point_cloud/point_cloud_encoder.h
+  src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.cc
+  src/draco/compression/point_cloud/point_cloud_kd_tree_encoder.h
+  src/draco/compression/point_cloud/point_cloud_sequential_encoder.cc
+  src/draco/compression/point_cloud/point_cloud_sequential_encoder.h
+  src/draco/core/bit_utils.cc
+  src/draco/core/bit_utils.h
+  src/draco/core/bounding_box.cc
+  src/draco/core/bounding_box.h
+  src/draco/core/cycle_timer.cc
+  src/draco/core/cycle_timer.h
+  src/draco/core/data_buffer.cc
+  src/draco/core/data_buffer.h
+  src/draco/core/divide.cc
+  src/draco/core/divide.h
+  src/draco/core/draco_index_type.h
+  src/draco/core/draco_index_type_vector.h
+  src/draco/core/draco_types.cc
+  src/draco/core/draco_types.h
+  src/draco/core/encoder_buffer.cc
+  src/draco/core/encoder_buffer.h
+  src/draco/core/hash_utils.cc
+  src/draco/core/hash_utils.h
+  src/draco/core/macros.h
+  src/draco/core/math_utils.h
+  src/draco/core/options.cc
+  src/draco/core/options.h
+  src/draco/core/quantization_utils.cc
+  src/draco/core/quantization_utils.h
+  src/draco/core/status.h
+  src/draco/core/statusor.h
+  src/draco/core/varint_encoding.h
+  src/draco/core/vector_d.h
+  src/draco/mesh/corner_table.cc
+  src/draco/mesh/corner_table.h
+  src/draco/mesh/corner_table_iterators.h
+  src/draco/mesh/mesh_are_equivalent.cc
+  src/draco/mesh/mesh_are_equivalent.h
+  src/draco/mesh/mesh_attribute_corner_table.cc
+  src/draco/mesh/mesh_attribute_corner_table.h
+  src/draco/mesh/mesh.cc
+  src/draco/mesh/mesh_cleanup.cc
+  src/draco/mesh/mesh_cleanup.h
+  src/draco/mesh/mesh.h
+  src/draco/mesh/mesh_misc_functions.cc
+  src/draco/mesh/mesh_misc_functions.h
+  src/draco/mesh/mesh_stripifier.cc
+  src/draco/mesh/mesh_stripifier.h
+  src/draco/mesh/triangle_soup_mesh_builder.cc
+  src/draco/mesh/triangle_soup_mesh_builder.h
+  src/draco/mesh/valence_cache.h
+  src/draco/metadata/geometry_metadata.cc
+  src/draco/metadata/geometry_metadata.h
+  src/draco/metadata/metadata.cc
+  src/draco/metadata/metadata_encoder.cc
+  src/draco/metadata/metadata_encoder.h
+  src/draco/metadata/metadata.h
+  src/draco/point_cloud/point_cloud_builder.cc
+  src/draco/point_cloud/point_cloud_builder.h
+  src/draco/point_cloud/point_cloud.cc
+  src/draco/point_cloud/point_cloud.h
 )
 
 set(LIB
 )
 
 set(INC
-	src
+  src
 )
 
 blender_add_lib(dracoenc "${SRC}" "${INC}" "" "${LIB}")
diff --git a/extern/gflags/CMakeLists.txt b/extern/gflags/CMakeLists.txt
index 13c3a2a03a9b07e0fb3464800ca3471e797be537..9179ad7fed0bef8d151f5c73325cf07ff97f34b4 100644
--- a/extern/gflags/CMakeLists.txt
+++ b/extern/gflags/CMakeLists.txt
@@ -19,35 +19,35 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	src
-	src/gflags
+  src
+  src/gflags
 )
 
 set(INC_SYS
 )
 
 set(SRC
-	src/gflags.cc
-	src/gflags_completions.cc
-	src/gflags_reporting.cc
-
-	src/gflags/config.h
-	src/gflags/gflags_completions.h
-	src/gflags/gflags_declare.h
-	src/gflags/gflags_gflags.h
-	src/gflags/gflags.h
-	src/mutex.h
-	src/util.h
+  src/gflags.cc
+  src/gflags_completions.cc
+  src/gflags_reporting.cc
+
+  src/gflags/config.h
+  src/gflags/gflags_completions.h
+  src/gflags/gflags_declare.h
+  src/gflags/gflags_gflags.h
+  src/gflags/gflags.h
+  src/mutex.h
+  src/util.h
 )
 
 set(LIB
 )
 
 if(WIN32)
-	list(APPEND SRC
-		src/windows_port.cc
-		src/windows_port.h
-	)
+  list(APPEND SRC
+    src/windows_port.cc
+    src/windows_port.h
+  )
 endif()
 
 add_definitions(${GFLAGS_DEFINES})
diff --git a/extern/glew-es/CMakeLists.txt b/extern/glew-es/CMakeLists.txt
index 5bb46d3f65372aeb1fbfe0826ae30fe85648417c..deb73b30455a00cc6d0b976709c32faedd8b25c0 100644
--- a/extern/glew-es/CMakeLists.txt
+++ b/extern/glew-es/CMakeLists.txt
@@ -19,7 +19,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	include
+  include
 )
 
 set(INC_SYS
@@ -27,19 +27,19 @@ set(INC_SYS
 )
 
 if(UNIX)
-	list(APPEND INC_SYS
-		${X11_X11_INCLUDE_PATH}
-	)
+  list(APPEND INC_SYS
+    ${X11_X11_INCLUDE_PATH}
+  )
 endif()
 
 set(SRC
-	src/glew.c
+  src/glew.c
 
-	include/GL/eglew.h
-	include/GL/glesew.h
-	include/GL/glew.h
-	include/GL/glxew.h
-	include/GL/wglew.h
+  include/GL/eglew.h
+  include/GL/glesew.h
+  include/GL/glew.h
+  include/GL/glxew.h
+  include/GL/wglew.h
 )
 
 set(LIB
diff --git a/extern/glew/CMakeLists.txt b/extern/glew/CMakeLists.txt
index b84b0a30199f17baaccca2e831c29792148770f0..e0773d828ecdfb9a42ac757e3ae73a5d1ee91c4b 100644
--- a/extern/glew/CMakeLists.txt
+++ b/extern/glew/CMakeLists.txt
@@ -19,7 +19,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	include
+  include
 )
 
 set(INC_SYS
@@ -27,18 +27,18 @@ set(INC_SYS
 )
 
 if(UNIX)
-	list(APPEND INC_SYS
-		${X11_X11_INCLUDE_PATH}
-	)
+  list(APPEND INC_SYS
+    ${X11_X11_INCLUDE_PATH}
+  )
 endif()
 
 set(SRC
-	src/glew.c
+  src/glew.c
 
-	include/GL/eglew.h
-	include/GL/glew.h
-	include/GL/glxew.h
-	include/GL/wglew.h
+  include/GL/eglew.h
+  include/GL/glew.h
+  include/GL/glxew.h
+  include/GL/wglew.h
 )
 
 set(LIB
diff --git a/extern/glog/CMakeLists.txt b/extern/glog/CMakeLists.txt
index 05a6590ea81044db2dfb564c24ae302972dcfca8..c60e30d0b482773f870c5cc8e6fee49aab661a5c 100644
--- a/extern/glog/CMakeLists.txt
+++ b/extern/glog/CMakeLists.txt
@@ -19,81 +19,81 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	src
-	../gflags/src
+  src
+  ../gflags/src
 )
 
 set(INC_SYS
 )
 
 set(SRC
-	src/logging.cc
-	src/raw_logging.cc
-	src/utilities.cc
-	src/vlog_is_on.cc
-
-	src/utilities.h
-
-	src/config.h
-	src/config_freebsd.h
-	src/config_haiku.h
-	src/config_hurd.h
-	src/config_linux.h
-	src/config_mac.h
-
-	src/base/commandlineflags.h
-	src/base/googleinit.h
-	src/base/mutex.h
-
-	src/stacktrace.h
-	src/stacktrace_generic-inl.h
-	src/stacktrace_libunwind-inl.h
-	src/stacktrace_powerpc-inl.h
-	src/stacktrace_x86_64-inl.h
-	src/stacktrace_x86-inl.h
+  src/logging.cc
+  src/raw_logging.cc
+  src/utilities.cc
+  src/vlog_is_on.cc
+
+  src/utilities.h
+
+  src/config.h
+  src/config_freebsd.h
+  src/config_haiku.h
+  src/config_hurd.h
+  src/config_linux.h
+  src/config_mac.h
+
+  src/base/commandlineflags.h
+  src/base/googleinit.h
+  src/base/mutex.h
+
+  src/stacktrace.h
+  src/stacktrace_generic-inl.h
+  src/stacktrace_libunwind-inl.h
+  src/stacktrace_powerpc-inl.h
+  src/stacktrace_x86_64-inl.h
+  src/stacktrace_x86-inl.h
 )
 
 set(LIB
 )
 
 if(NOT WITH_SYSTEM_GFLAGS)
-	list(APPEND LIB
-		extern_gflags
-	)
+  list(APPEND LIB
+    extern_gflags
+  )
 endif()
 
 if(WIN32)
-	list(APPEND SRC
-		src/windows/port.cc
-
-		src/windows/glog/raw_logging.h
-		src/windows/glog/vlog_is_on.h
-		src/windows/glog/logging.h
-		src/windows/glog/log_severity.h
-		src/windows/port.h
-		src/windows/config.h
-	)
-
-	list(APPEND INC
-		src/windows
-	)
+  list(APPEND SRC
+    src/windows/port.cc
+
+    src/windows/glog/raw_logging.h
+    src/windows/glog/vlog_is_on.h
+    src/windows/glog/logging.h
+    src/windows/glog/log_severity.h
+    src/windows/port.h
+    src/windows/config.h
+  )
+
+  list(APPEND INC
+    src/windows
+  )
 else()
-	list(APPEND INC
-		include
-	)
-	list(APPEND SRC
-		src/demangle.cc
-		src/signalhandler.cc
-		src/symbolize.cc
-
-		src/demangle.h
-		src/symbolize.h
-
-		include/glog/logging.h
-		include/glog/log_severity.h
-		include/glog/raw_logging.h
-		include/glog/vlog_is_on.h
-	)
+  list(APPEND INC
+    include
+  )
+  list(APPEND SRC
+    src/demangle.cc
+    src/signalhandler.cc
+    src/symbolize.cc
+
+    src/demangle.h
+    src/symbolize.h
+
+    include/glog/logging.h
+    include/glog/log_severity.h
+    include/glog/raw_logging.h
+    include/glog/vlog_is_on.h
+  )
 endif()
 
 add_definitions(${GFLAGS_DEFINES})
diff --git a/extern/gtest/CMakeLists.txt b/extern/gtest/CMakeLists.txt
index f33e012b0f494208778736ef325b1dffaeb18a3a..056b32cc99ef06be7fbeb7c798ebe304e17e9b53 100644
--- a/extern/gtest/CMakeLists.txt
+++ b/extern/gtest/CMakeLists.txt
@@ -20,14 +20,14 @@
 
 # avoid noisy warnings
 if(CMAKE_COMPILER_IS_GNUCC)
-	remove_cc_flag(
-		"-Wmissing-declarations"
-	)
+  remove_cc_flag(
+    "-Wmissing-declarations"
+  )
 endif()
 
 set(INC
-	.
-	include
+  .
+  include
 )
 
 set(INC_SYS
@@ -35,35 +35,35 @@ set(INC_SYS
 )
 
 set(SRC
-	src/gtest.cc
-	src/gtest-death-test.cc
-	src/gtest-filepath.cc
-	src/gtest-port.cc
-	src/gtest-printers.cc
-	src/gtest-test-part.cc
-	src/gtest-typed-test.cc
+  src/gtest.cc
+  src/gtest-death-test.cc
+  src/gtest-filepath.cc
+  src/gtest-port.cc
+  src/gtest-printers.cc
+  src/gtest-test-part.cc
+  src/gtest-typed-test.cc
 
-	src/gtest-internal-inl.h
-	include/gtest/gtest-death-test.h
-	include/gtest/gtest.h
-	include/gtest/gtest-message.h
-	include/gtest/gtest-param-test.h
-	include/gtest/gtest_pred_impl.h
-	include/gtest/gtest-printers.h
-	include/gtest/gtest_prod.h
-	include/gtest/gtest-spi.h
-	include/gtest/gtest-test-part.h
-	include/gtest/gtest-typed-test.h
-	include/gtest/internal/gtest-death-test-internal.h
-	include/gtest/internal/gtest-filepath.h
-	include/gtest/internal/gtest-internal.h
-	include/gtest/internal/gtest-linked_ptr.h
-	include/gtest/internal/gtest-param-util-generated.h
-	include/gtest/internal/gtest-param-util.h
-	include/gtest/internal/gtest-port.h
-	include/gtest/internal/gtest-string.h
-	include/gtest/internal/gtest-tuple.h
-	include/gtest/internal/gtest-type-util.h
+  src/gtest-internal-inl.h
+  include/gtest/gtest-death-test.h
+  include/gtest/gtest.h
+  include/gtest/gtest-message.h
+  include/gtest/gtest-param-test.h
+  include/gtest/gtest_pred_impl.h
+  include/gtest/gtest-printers.h
+  include/gtest/gtest_prod.h
+  include/gtest/gtest-spi.h
+  include/gtest/gtest-test-part.h
+  include/gtest/gtest-typed-test.h
+  include/gtest/internal/gtest-death-test-internal.h
+  include/gtest/internal/gtest-filepath.h
+  include/gtest/internal/gtest-internal.h
+  include/gtest/internal/gtest-linked_ptr.h
+  include/gtest/internal/gtest-param-util-generated.h
+  include/gtest/internal/gtest-param-util.h
+  include/gtest/internal/gtest-port.h
+  include/gtest/internal/gtest-string.h
+  include/gtest/internal/gtest-tuple.h
+  include/gtest/internal/gtest-type-util.h
 )
 
 set(LIB
diff --git a/extern/lzma/CMakeLists.txt b/extern/lzma/CMakeLists.txt
index 8be848f83ce0b849e5697456461ad74b71c55d67..8bdddf0acede1d8a5f2b22121e548ade8eaa0a4f 100644
--- a/extern/lzma/CMakeLists.txt
+++ b/extern/lzma/CMakeLists.txt
@@ -19,7 +19,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
@@ -27,19 +27,19 @@ set(INC_SYS
 )
 
 set(SRC
-	Alloc.c
-	LzFind.c
-	LzmaDec.c
-	LzmaEnc.c
-	LzmaLib.c
+  Alloc.c
+  LzFind.c
+  LzmaDec.c
+  LzmaEnc.c
+  LzmaLib.c
 
-	Alloc.h
-	LzFind.h
-	LzHash.h
-	LzmaDec.h
-	LzmaEnc.h
-	LzmaLib.h
-	Types.h
+  Alloc.h
+  LzFind.h
+  LzHash.h
+  LzmaDec.h
+  LzmaEnc.h
+  LzmaLib.h
+  Types.h
 )
 
 set(LIB
diff --git a/extern/lzo/CMakeLists.txt b/extern/lzo/CMakeLists.txt
index 7eebc92c46dcfb3841bf5bed626b4cb33c425f80..630918dc92c964b360a10f38c9a6aae0c7c6b6be 100644
--- a/extern/lzo/CMakeLists.txt
+++ b/extern/lzo/CMakeLists.txt
@@ -29,11 +29,11 @@ set(INC_SYS
 )
 
 set(SRC
-	minilzo/minilzo.c
+  minilzo/minilzo.c
 
-	minilzo/lzoconf.h
-	minilzo/lzodefs.h
-	minilzo/minilzo.h
+  minilzo/lzoconf.h
+  minilzo/lzodefs.h
+  minilzo/minilzo.h
 )
 
 set(LIB
diff --git a/extern/rangetree/CMakeLists.txt b/extern/rangetree/CMakeLists.txt
index cb0b424a023b08b3335576f21912845abb0a2108..b5c209d5aa323cf78e3603a8285b684caa8c8d0a 100644
--- a/extern/rangetree/CMakeLists.txt
+++ b/extern/rangetree/CMakeLists.txt
@@ -17,14 +17,14 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
+  .
 )
 
 set(SRC
-	range_tree.h
-	intern/generic_alloc_impl.h
+  range_tree.h
+  intern/generic_alloc_impl.h
 
-	intern/range_tree.c
+  intern/range_tree.c
 )
 
 set(LIB
diff --git a/extern/sdlew/CMakeLists.txt b/extern/sdlew/CMakeLists.txt
index 5698d87108b211bcd855f11d359fb6258774a540..29bae5e47820851c4980155c787f942bd1f9d8bb 100644
--- a/extern/sdlew/CMakeLists.txt
+++ b/extern/sdlew/CMakeLists.txt
@@ -19,8 +19,8 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
-	include
+  .
+  include
 )
 
 set(INC_SYS
@@ -28,8 +28,8 @@ set(INC_SYS
 )
 
 set(SRC
-	include/sdlew.h
-	src/sdlew.c
+  include/sdlew.h
+  src/sdlew.c
 )
 
 set(LIB
diff --git a/extern/wcwidth/CMakeLists.txt b/extern/wcwidth/CMakeLists.txt
index 384a2c4f58c12393c00a2179961e84675139fce0..805655de26a8ce634830a15bb62801a027dac90d 100644
--- a/extern/wcwidth/CMakeLists.txt
+++ b/extern/wcwidth/CMakeLists.txt
@@ -19,7 +19,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
@@ -27,9 +27,9 @@ set(INC_SYS
 )
 
 set(SRC
-	wcwidth.c
+  wcwidth.c
 
-	wcwidth.h
+  wcwidth.h
 )
 
 set(LIB
diff --git a/extern/xdnd/CMakeLists.txt b/extern/xdnd/CMakeLists.txt
index 54d6648c2a693e6b4b20502ed162a516438e3b4d..3da6f72862084a571a59cbe86541bbf2d92bcd4b 100644
--- a/extern/xdnd/CMakeLists.txt
+++ b/extern/xdnd/CMakeLists.txt
@@ -19,23 +19,23 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
-	${X11_X11_INCLUDE_PATH}
+  ${X11_X11_INCLUDE_PATH}
 )
 
 set(SRC
-	xdnd.c
-	xdnd.h
+  xdnd.c
+  xdnd.h
 )
 
 set(LIB
 )
 
 add_definitions(
-	-DHAVE_SYS_TIME_H
+  -DHAVE_SYS_TIME_H
 )
 
 blender_add_lib(extern_xdnd "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/intern/CMakeLists.txt b/intern/CMakeLists.txt
index 83e3bc8208d0fd441360c5247d64da2ab389d0c8..b93f2057b47c12693ea91d9c64b1e999aaab513f 100644
--- a/intern/CMakeLists.txt
+++ b/intern/CMakeLists.txt
@@ -33,46 +33,46 @@ add_subdirectory(glew-mx)
 add_subdirectory(eigen)
 
 if(WITH_AUDASPACE)
-	add_subdirectory(audaspace)
+  add_subdirectory(audaspace)
 endif()
 
 if(WITH_MOD_REMESH)
-	add_subdirectory(dualcon)
+  add_subdirectory(dualcon)
 endif()
 
 if(WITH_MOD_FLUID)
-	add_subdirectory(elbeem)
+  add_subdirectory(elbeem)
 endif()
 
 if(WITH_MOD_SMOKE)
-	add_subdirectory(smoke)
+  add_subdirectory(smoke)
 endif()
 
 if(WITH_IK_SOLVER)
-	add_subdirectory(iksolver)
+  add_subdirectory(iksolver)
 endif()
 
 if(WITH_IK_ITASC)
-	add_subdirectory(itasc)
+  add_subdirectory(itasc)
 endif()
 
 if(WITH_CYCLES)
-	add_subdirectory(cycles)
+  add_subdirectory(cycles)
 endif()
 
 if(WITH_INTERNATIONAL)
-	add_subdirectory(locale)
+  add_subdirectory(locale)
 endif()
 
 if(WITH_BULLET)
-	add_subdirectory(rigidbody)
+  add_subdirectory(rigidbody)
 endif()
 
 # only windows needs utf16 converter
 if(WIN32)
-	add_subdirectory(utfconv)
+  add_subdirectory(utfconv)
 endif()
 
 if(WITH_OPENVDB)
-	add_subdirectory(openvdb)
+  add_subdirectory(openvdb)
 endif()
diff --git a/intern/elbeem/CMakeLists.txt b/intern/elbeem/CMakeLists.txt
index d70f3939a40295eae810edae8328a13b10994c7e..926329be61b293a052cbe377d351fa22a7233514 100644
--- a/intern/elbeem/CMakeLists.txt
+++ b/intern/elbeem/CMakeLists.txt
@@ -19,70 +19,70 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	extern
-	../guardedalloc
+  extern
+  ../guardedalloc
 )
 
 set(INC_SYS
-	${PNG_INCLUDE_DIRS}
-	${ZLIB_INCLUDE_DIRS}
+  ${PNG_INCLUDE_DIRS}
+  ${ZLIB_INCLUDE_DIRS}
 )
 
 set(SRC
-	intern/attributes.cpp
-	intern/controlparticles.cpp
-	intern/elbeem.cpp
-	intern/elbeem_control.cpp
-	intern/isosurface.cpp
-	intern/mvmcoords.cpp
-	intern/ntl_blenderdumper.cpp
-	intern/ntl_bsptree.cpp
-	intern/ntl_geometrymodel.cpp
-	intern/ntl_geometryobject.cpp
-	intern/ntl_lighting.cpp
-	intern/ntl_ray.cpp
-	intern/ntl_world.cpp
-	intern/parametrizer.cpp
-	intern/particletracer.cpp
-	intern/simulation_object.cpp
-	intern/solver_adap.cpp
-	intern/solver_control.cpp
-	intern/solver_init.cpp
-	intern/solver_interface.cpp
-	intern/solver_main.cpp
-	intern/solver_util.cpp
-	intern/utilities.cpp
+  intern/attributes.cpp
+  intern/controlparticles.cpp
+  intern/elbeem.cpp
+  intern/elbeem_control.cpp
+  intern/isosurface.cpp
+  intern/mvmcoords.cpp
+  intern/ntl_blenderdumper.cpp
+  intern/ntl_bsptree.cpp
+  intern/ntl_geometrymodel.cpp
+  intern/ntl_geometryobject.cpp
+  intern/ntl_lighting.cpp
+  intern/ntl_ray.cpp
+  intern/ntl_world.cpp
+  intern/parametrizer.cpp
+  intern/particletracer.cpp
+  intern/simulation_object.cpp
+  intern/solver_adap.cpp
+  intern/solver_control.cpp
+  intern/solver_init.cpp
+  intern/solver_interface.cpp
+  intern/solver_main.cpp
+  intern/solver_util.cpp
+  intern/utilities.cpp
 
-	extern/LBM_fluidsim.h
-	extern/elbeem.h
-	intern/attributes.h
-	intern/controlparticles.h
-	intern/elbeem_control.h
-	intern/isosurface.h
-	intern/loop_tools.h
-	intern/mcubes_tables.h
-	intern/mvmcoords.h
-	intern/ntl_blenderdumper.h
-	intern/ntl_bsptree.h
-	intern/ntl_geometryclass.h
-	intern/ntl_geometrymodel.h
-	intern/ntl_geometryobject.h
-	intern/ntl_geometryshader.h
-	intern/ntl_lighting.h
-	intern/ntl_matrices.h
-	intern/ntl_ray.h
-	intern/ntl_vector3dim.h
-	intern/ntl_world.h
-	intern/paraloopend.h
-	intern/parametrizer.h
-	intern/particletracer.h
-	intern/simulation_object.h
-	intern/solver_class.h
-	intern/solver_control.h
-	intern/solver_interface.h
-	intern/solver_relax.h
-	intern/utilities.h
-	intern/globals.h
+  extern/LBM_fluidsim.h
+  extern/elbeem.h
+  intern/attributes.h
+  intern/controlparticles.h
+  intern/elbeem_control.h
+  intern/isosurface.h
+  intern/loop_tools.h
+  intern/mcubes_tables.h
+  intern/mvmcoords.h
+  intern/ntl_blenderdumper.h
+  intern/ntl_bsptree.h
+  intern/ntl_geometryclass.h
+  intern/ntl_geometrymodel.h
+  intern/ntl_geometryobject.h
+  intern/ntl_geometryshader.h
+  intern/ntl_lighting.h
+  intern/ntl_matrices.h
+  intern/ntl_ray.h
+  intern/ntl_vector3dim.h
+  intern/ntl_world.h
+  intern/paraloopend.h
+  intern/parametrizer.h
+  intern/particletracer.h
+  intern/simulation_object.h
+  intern/solver_class.h
+  intern/solver_control.h
+  intern/solver_interface.h
+  intern/solver_relax.h
+  intern/utilities.h
+  intern/globals.h
 )
 
 set(LIB
@@ -92,31 +92,31 @@ set(LIB
 remove_strict_flags()
 
 add_definitions(
-	-DNOGUI
-	-DELBEEM_BLENDER=1
+  -DNOGUI
+  -DELBEEM_BLENDER=1
 )
 
 # not essential but quiet gcc's -Wundef
 add_definitions(
-	-DLBM_PRECISION=1
-	-DLBM_INCLUDE_TESTSOLVERS=0
-	-DFSGR_STRICT_DEBUG=0
-	-DELBEEM_MPI=0
-	-DNEWDIRVELMOTEST=0
+  -DLBM_PRECISION=1
+  -DLBM_INCLUDE_TESTSOLVERS=0
+  -DFSGR_STRICT_DEBUG=0
+  -DELBEEM_MPI=0
+  -DNEWDIRVELMOTEST=0
 )
 
 if(WIN32)
-	# We need BLI_gzopen on win32 for unicode paths
-	add_definitions(
-		-DLBM_GZIP_OVERRIDE_H="${CMAKE_SOURCE_DIR}/source/blender/blenlib/BLI_fileops.h"
-		-D LBM_GZIP_OPEN_FN="\(gzFile\)BLI_gzopen"
-	)
+  # We need BLI_gzopen on win32 for unicode paths
+  add_definitions(
+    -DLBM_GZIP_OVERRIDE_H="${CMAKE_SOURCE_DIR}/source/blender/blenlib/BLI_fileops.h"
+    -D LBM_GZIP_OPEN_FN="\(gzFile\)BLI_gzopen"
+  )
 endif()
 
 if(WITH_OPENMP)
-	add_definitions(-DPARALLEL=1)
+  add_definitions(-DPARALLEL=1)
 else()
-	add_definitions(-DPARALLEL=0)
+  add_definitions(-DPARALLEL=0)
 endif()
 
 blender_add_lib_nolist(bf_intern_elbeem "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/intern/itasc/CMakeLists.txt b/intern/itasc/CMakeLists.txt
index c0f48bcf95758411453fd5822354d62f4186cd12..060e5378fc4fd370b90392ba722d97b0647233b6 100644
--- a/intern/itasc/CMakeLists.txt
+++ b/intern/itasc/CMakeLists.txt
@@ -23,334 +23,334 @@ set(INC
 )
 
 set(INC_SYS
-	${EIGEN3_INCLUDE_DIRS}
+  ${EIGEN3_INCLUDE_DIRS}
 )
 
 if(NOT WITH_SYSTEM_EIGEN3)
-	set(EIGEN3_HEADERS
-		# until we have another user...
-		../../extern/Eigen3/Eigen/src/Cholesky/LDLT.h
-		../../extern/Eigen3/Eigen/src/Cholesky/LLT.h
-		../../extern/Eigen3/Eigen/src/Cholesky/LLT_MKL.h
-		../../extern/Eigen3/Eigen/src/CholmodSupport/CholmodSupport.h
-		../../extern/Eigen3/Eigen/src/Core/Array.h
-		../../extern/Eigen3/Eigen/src/Core/ArrayBase.h
-		../../extern/Eigen3/Eigen/src/Core/ArrayWrapper.h
-		../../extern/Eigen3/Eigen/src/Core/Assign.h
-		../../extern/Eigen3/Eigen/src/Core/Assign_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/BandMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/Block.h
-		../../extern/Eigen3/Eigen/src/Core/BooleanRedux.h
-		../../extern/Eigen3/Eigen/src/Core/CommaInitializer.h
-		../../extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h
-		../../extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h
-		../../extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h
-		../../extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h
-		../../extern/Eigen3/Eigen/src/Core/DenseBase.h
-		../../extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h
-		../../extern/Eigen3/Eigen/src/Core/DenseStorage.h
-		../../extern/Eigen3/Eigen/src/Core/Diagonal.h
-		../../extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/DiagonalProduct.h
-		../../extern/Eigen3/Eigen/src/Core/Dot.h
-		../../extern/Eigen3/Eigen/src/Core/EigenBase.h
-		../../extern/Eigen3/Eigen/src/Core/Flagged.h
-		../../extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h
-		../../extern/Eigen3/Eigen/src/Core/Functors.h
-		../../extern/Eigen3/Eigen/src/Core/Fuzzy.h
-		../../extern/Eigen3/Eigen/src/Core/GeneralProduct.h
-		../../extern/Eigen3/Eigen/src/Core/GenericPacketMath.h
-		../../extern/Eigen3/Eigen/src/Core/GlobalFunctions.h
-		../../extern/Eigen3/Eigen/src/Core/IO.h
-		../../extern/Eigen3/Eigen/src/Core/Map.h
-		../../extern/Eigen3/Eigen/src/Core/MapBase.h
-		../../extern/Eigen3/Eigen/src/Core/MathFunctions.h
-		../../extern/Eigen3/Eigen/src/Core/Matrix.h
-		../../extern/Eigen3/Eigen/src/Core/MatrixBase.h
-		../../extern/Eigen3/Eigen/src/Core/NestByValue.h
-		../../extern/Eigen3/Eigen/src/Core/NoAlias.h
-		../../extern/Eigen3/Eigen/src/Core/NumTraits.h
-		../../extern/Eigen3/Eigen/src/Core/PermutationMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/PlainObjectBase.h
-		../../extern/Eigen3/Eigen/src/Core/Product.h
-		../../extern/Eigen3/Eigen/src/Core/ProductBase.h
-		../../extern/Eigen3/Eigen/src/Core/Random.h
-		../../extern/Eigen3/Eigen/src/Core/Redux.h
-		../../extern/Eigen3/Eigen/src/Core/Replicate.h
-		../../extern/Eigen3/Eigen/src/Core/ReturnByValue.h
-		../../extern/Eigen3/Eigen/src/Core/Reverse.h
-		../../extern/Eigen3/Eigen/src/Core/Select.h
-		../../extern/Eigen3/Eigen/src/Core/SelfAdjointView.h
-		../../extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
-		../../extern/Eigen3/Eigen/src/Core/SolveTriangular.h
-		../../extern/Eigen3/Eigen/src/Core/StableNorm.h
-		../../extern/Eigen3/Eigen/src/Core/Stride.h
-		../../extern/Eigen3/Eigen/src/Core/Swap.h
-		../../extern/Eigen3/Eigen/src/Core/Transpose.h
-		../../extern/Eigen3/Eigen/src/Core/Transpositions.h
-		../../extern/Eigen3/Eigen/src/Core/TriangularMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/VectorBlock.h
-		../../extern/Eigen3/Eigen/src/Core/VectorwiseOp.h
-		../../extern/Eigen3/Eigen/src/Core/Visitor.h
-		../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
-		../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
-		../../extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h
-		../../extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h
-		../../extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
-		../../extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h
-		../../extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
-		../../extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
-		../../extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
-		../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/Parallelizer.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h
-		../../extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
-		../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h
-		../../extern/Eigen3/Eigen/src/Core/util/BlasUtil.h
-		../../extern/Eigen3/Eigen/src/Core/util/Constants.h
-		../../extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
-		../../extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h
-		../../extern/Eigen3/Eigen/src/Core/util/Macros.h
-		../../extern/Eigen3/Eigen/src/Core/util/Memory.h
-		../../extern/Eigen3/Eigen/src/Core/util/Meta.h
-		../../extern/Eigen3/Eigen/src/Core/util/MKL_support.h
-		../../extern/Eigen3/Eigen/src/Core/util/NonMPL2.h
-		../../extern/Eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
-		../../extern/Eigen3/Eigen/src/Core/util/StaticAssert.h
-		../../extern/Eigen3/Eigen/src/Core/util/XprHelper.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Block.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/LU.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Macros.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Memory.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Meta.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Minor.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/QR.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/SVD.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
-		../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
-		../../extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
-		../../extern/Eigen3/Eigen/src/Geometry/AlignedBox.h
-		../../extern/Eigen3/Eigen/src/Geometry/AngleAxis.h
-		../../extern/Eigen3/Eigen/src/Geometry/EulerAngles.h
-		../../extern/Eigen3/Eigen/src/Geometry/Homogeneous.h
-		../../extern/Eigen3/Eigen/src/Geometry/Hyperplane.h
-		../../extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h
-		../../extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h
-		../../extern/Eigen3/Eigen/src/Geometry/Quaternion.h
-		../../extern/Eigen3/Eigen/src/Geometry/Rotation2D.h
-		../../extern/Eigen3/Eigen/src/Geometry/RotationBase.h
-		../../extern/Eigen3/Eigen/src/Geometry/Scaling.h
-		../../extern/Eigen3/Eigen/src/Geometry/Transform.h
-		../../extern/Eigen3/Eigen/src/Geometry/Translation.h
-		../../extern/Eigen3/Eigen/src/Geometry/Umeyama.h
-		../../extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
-		../../extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h
-		../../extern/Eigen3/Eigen/src/Householder/Householder.h
-		../../extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h
-		../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h
-		../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h
-		../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h
-		../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h
-		../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h
-		../../extern/Eigen3/Eigen/src/Jacobi/Jacobi.h
-		../../extern/Eigen3/Eigen/src/LU/Determinant.h
-		../../extern/Eigen3/Eigen/src/LU/FullPivLU.h
-		../../extern/Eigen3/Eigen/src/LU/Inverse.h
-		../../extern/Eigen3/Eigen/src/LU/PartialPivLU.h
-		../../extern/Eigen3/Eigen/src/LU/PartialPivLU_MKL.h
-		../../extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h
-		../../extern/Eigen3/Eigen/src/misc/blas.h
-		../../extern/Eigen3/Eigen/src/misc/Image.h
-		../../extern/Eigen3/Eigen/src/misc/Kernel.h
-		../../extern/Eigen3/Eigen/src/misc/Solve.h
-		../../extern/Eigen3/Eigen/src/misc/SparseSolve.h
-		../../extern/Eigen3/Eigen/src/OrderingMethods/Amd.h
-		../../extern/Eigen3/Eigen/src/PardisoSupport/PardisoSupport.h
-		../../extern/Eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h
-		../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
-		../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
-		../../extern/Eigen3/Eigen/src/plugins/BlockMethods.h
-		../../extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
-		../../extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
-		../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
-		../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
-		../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h
-		../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
-		../../extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h
-		../../extern/Eigen3/Eigen/src/QR/HouseholderQR.h
-		../../extern/Eigen3/Eigen/src/QR/HouseholderQR_MKL.h
-		../../extern/Eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h
-		../../extern/Eigen3/Eigen/src/SparseCore/AmbiVector.h
-		../../extern/Eigen3/Eigen/src/SparseCore/CompressedStorage.h
-		../../extern/Eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h
-		../../extern/Eigen3/Eigen/src/SparseCore/CoreIterators.h
-		../../extern/Eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseAssign.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseBlock.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseDenseProduct.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseDot.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseFuzzy.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrix.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrixBase.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparsePermutation.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseProduct.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseRedux.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseTranspose.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseTriangularView.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseUtil.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseVector.h
-		../../extern/Eigen3/Eigen/src/SparseCore/SparseView.h
-		../../extern/Eigen3/Eigen/src/SparseCore/TriangularSolver.h
-		../../extern/Eigen3/Eigen/src/StlSupport/details.h
-		../../extern/Eigen3/Eigen/src/StlSupport/StdDeque.h
-		../../extern/Eigen3/Eigen/src/StlSupport/StdList.h
-		../../extern/Eigen3/Eigen/src/StlSupport/StdVector.h
-		../../extern/Eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h
-		../../extern/Eigen3/Eigen/src/SVD/JacobiSVD.h
-		../../extern/Eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
-		../../extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h
-		../../extern/Eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h
-	)
+  set(EIGEN3_HEADERS
+    # until we have another user...
+    ../../extern/Eigen3/Eigen/src/Cholesky/LDLT.h
+    ../../extern/Eigen3/Eigen/src/Cholesky/LLT.h
+    ../../extern/Eigen3/Eigen/src/Cholesky/LLT_MKL.h
+    ../../extern/Eigen3/Eigen/src/CholmodSupport/CholmodSupport.h
+    ../../extern/Eigen3/Eigen/src/Core/Array.h
+    ../../extern/Eigen3/Eigen/src/Core/ArrayBase.h
+    ../../extern/Eigen3/Eigen/src/Core/ArrayWrapper.h
+    ../../extern/Eigen3/Eigen/src/Core/Assign.h
+    ../../extern/Eigen3/Eigen/src/Core/Assign_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/BandMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/Block.h
+    ../../extern/Eigen3/Eigen/src/Core/BooleanRedux.h
+    ../../extern/Eigen3/Eigen/src/Core/CommaInitializer.h
+    ../../extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h
+    ../../extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h
+    ../../extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h
+    ../../extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h
+    ../../extern/Eigen3/Eigen/src/Core/DenseBase.h
+    ../../extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h
+    ../../extern/Eigen3/Eigen/src/Core/DenseStorage.h
+    ../../extern/Eigen3/Eigen/src/Core/Diagonal.h
+    ../../extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/DiagonalProduct.h
+    ../../extern/Eigen3/Eigen/src/Core/Dot.h
+    ../../extern/Eigen3/Eigen/src/Core/EigenBase.h
+    ../../extern/Eigen3/Eigen/src/Core/Flagged.h
+    ../../extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h
+    ../../extern/Eigen3/Eigen/src/Core/Functors.h
+    ../../extern/Eigen3/Eigen/src/Core/Fuzzy.h
+    ../../extern/Eigen3/Eigen/src/Core/GeneralProduct.h
+    ../../extern/Eigen3/Eigen/src/Core/GenericPacketMath.h
+    ../../extern/Eigen3/Eigen/src/Core/GlobalFunctions.h
+    ../../extern/Eigen3/Eigen/src/Core/IO.h
+    ../../extern/Eigen3/Eigen/src/Core/Map.h
+    ../../extern/Eigen3/Eigen/src/Core/MapBase.h
+    ../../extern/Eigen3/Eigen/src/Core/MathFunctions.h
+    ../../extern/Eigen3/Eigen/src/Core/Matrix.h
+    ../../extern/Eigen3/Eigen/src/Core/MatrixBase.h
+    ../../extern/Eigen3/Eigen/src/Core/NestByValue.h
+    ../../extern/Eigen3/Eigen/src/Core/NoAlias.h
+    ../../extern/Eigen3/Eigen/src/Core/NumTraits.h
+    ../../extern/Eigen3/Eigen/src/Core/PermutationMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/PlainObjectBase.h
+    ../../extern/Eigen3/Eigen/src/Core/Product.h
+    ../../extern/Eigen3/Eigen/src/Core/ProductBase.h
+    ../../extern/Eigen3/Eigen/src/Core/Random.h
+    ../../extern/Eigen3/Eigen/src/Core/Redux.h
+    ../../extern/Eigen3/Eigen/src/Core/Replicate.h
+    ../../extern/Eigen3/Eigen/src/Core/ReturnByValue.h
+    ../../extern/Eigen3/Eigen/src/Core/Reverse.h
+    ../../extern/Eigen3/Eigen/src/Core/Select.h
+    ../../extern/Eigen3/Eigen/src/Core/SelfAdjointView.h
+    ../../extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
+    ../../extern/Eigen3/Eigen/src/Core/SolveTriangular.h
+    ../../extern/Eigen3/Eigen/src/Core/StableNorm.h
+    ../../extern/Eigen3/Eigen/src/Core/Stride.h
+    ../../extern/Eigen3/Eigen/src/Core/Swap.h
+    ../../extern/Eigen3/Eigen/src/Core/Transpose.h
+    ../../extern/Eigen3/Eigen/src/Core/Transpositions.h
+    ../../extern/Eigen3/Eigen/src/Core/TriangularMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/VectorBlock.h
+    ../../extern/Eigen3/Eigen/src/Core/VectorwiseOp.h
+    ../../extern/Eigen3/Eigen/src/Core/Visitor.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
+    ../../extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
+    ../../extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
+    ../../extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/Parallelizer.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h
+    ../../extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
+    ../../extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h
+    ../../extern/Eigen3/Eigen/src/Core/util/BlasUtil.h
+    ../../extern/Eigen3/Eigen/src/Core/util/Constants.h
+    ../../extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+    ../../extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h
+    ../../extern/Eigen3/Eigen/src/Core/util/Macros.h
+    ../../extern/Eigen3/Eigen/src/Core/util/Memory.h
+    ../../extern/Eigen3/Eigen/src/Core/util/Meta.h
+    ../../extern/Eigen3/Eigen/src/Core/util/MKL_support.h
+    ../../extern/Eigen3/Eigen/src/Core/util/NonMPL2.h
+    ../../extern/Eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+    ../../extern/Eigen3/Eigen/src/Core/util/StaticAssert.h
+    ../../extern/Eigen3/Eigen/src/Core/util/XprHelper.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Block.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/LU.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Macros.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Memory.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Meta.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Minor.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/QR.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/SVD.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
+    ../../extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
+    ../../extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
+    ../../extern/Eigen3/Eigen/src/Geometry/AlignedBox.h
+    ../../extern/Eigen3/Eigen/src/Geometry/AngleAxis.h
+    ../../extern/Eigen3/Eigen/src/Geometry/EulerAngles.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Homogeneous.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Hyperplane.h
+    ../../extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h
+    ../../extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Quaternion.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Rotation2D.h
+    ../../extern/Eigen3/Eigen/src/Geometry/RotationBase.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Scaling.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Transform.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Translation.h
+    ../../extern/Eigen3/Eigen/src/Geometry/Umeyama.h
+    ../../extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
+    ../../extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h
+    ../../extern/Eigen3/Eigen/src/Householder/Householder.h
+    ../../extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h
+    ../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h
+    ../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h
+    ../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h
+    ../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h
+    ../../extern/Eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h
+    ../../extern/Eigen3/Eigen/src/Jacobi/Jacobi.h
+    ../../extern/Eigen3/Eigen/src/LU/Determinant.h
+    ../../extern/Eigen3/Eigen/src/LU/FullPivLU.h
+    ../../extern/Eigen3/Eigen/src/LU/Inverse.h
+    ../../extern/Eigen3/Eigen/src/LU/PartialPivLU.h
+    ../../extern/Eigen3/Eigen/src/LU/PartialPivLU_MKL.h
+    ../../extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h
+    ../../extern/Eigen3/Eigen/src/misc/blas.h
+    ../../extern/Eigen3/Eigen/src/misc/Image.h
+    ../../extern/Eigen3/Eigen/src/misc/Kernel.h
+    ../../extern/Eigen3/Eigen/src/misc/Solve.h
+    ../../extern/Eigen3/Eigen/src/misc/SparseSolve.h
+    ../../extern/Eigen3/Eigen/src/OrderingMethods/Amd.h
+    ../../extern/Eigen3/Eigen/src/PardisoSupport/PardisoSupport.h
+    ../../extern/Eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h
+    ../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
+    ../../extern/Eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
+    ../../extern/Eigen3/Eigen/src/plugins/BlockMethods.h
+    ../../extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
+    ../../extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
+    ../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
+    ../../extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
+    ../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h
+    ../../extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
+    ../../extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h
+    ../../extern/Eigen3/Eigen/src/QR/HouseholderQR.h
+    ../../extern/Eigen3/Eigen/src/QR/HouseholderQR_MKL.h
+    ../../extern/Eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/AmbiVector.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/CompressedStorage.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/CoreIterators.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseAssign.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseBlock.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseDenseProduct.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseDot.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseFuzzy.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrix.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseMatrixBase.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparsePermutation.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseProduct.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseRedux.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseTranspose.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseTriangularView.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseUtil.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseVector.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/SparseView.h
+    ../../extern/Eigen3/Eigen/src/SparseCore/TriangularSolver.h
+    ../../extern/Eigen3/Eigen/src/StlSupport/details.h
+    ../../extern/Eigen3/Eigen/src/StlSupport/StdDeque.h
+    ../../extern/Eigen3/Eigen/src/StlSupport/StdList.h
+    ../../extern/Eigen3/Eigen/src/StlSupport/StdVector.h
+    ../../extern/Eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h
+    ../../extern/Eigen3/Eigen/src/SVD/JacobiSVD.h
+    ../../extern/Eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
+    ../../extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h
+    ../../extern/Eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h
+  )
 endif()
 
 set(SRC
-	Armature.cpp
-	Cache.cpp
-	ConstraintSet.cpp
-	ControlledObject.cpp
-	CopyPose.cpp
-	Distance.cpp
-	FixedObject.cpp
-	MovingFrame.cpp
-	Scene.cpp
-	UncontrolledObject.cpp
-	WDLSSolver.cpp
-	WSDLSSolver.cpp
-	WorldObject.cpp
-	eigen_types.cpp
-	ublas_types.hpp
+  Armature.cpp
+  Cache.cpp
+  ConstraintSet.cpp
+  ControlledObject.cpp
+  CopyPose.cpp
+  Distance.cpp
+  FixedObject.cpp
+  MovingFrame.cpp
+  Scene.cpp
+  UncontrolledObject.cpp
+  WDLSSolver.cpp
+  WSDLSSolver.cpp
+  WorldObject.cpp
+  eigen_types.cpp
+  ublas_types.hpp
 
-	kdl/chain.cpp
-	kdl/chainfksolverpos_recursive.cpp
-	kdl/chainjnttojacsolver.cpp
-	kdl/frameacc.cpp
-	kdl/frames.cpp
-	kdl/frames_io.cpp
-	kdl/framevel.cpp
-	kdl/inertia.cpp
-	kdl/jacobian.cpp
-	kdl/jntarray.cpp
-	kdl/jntarrayacc.cpp
-	kdl/jntarrayvel.cpp
-	kdl/joint.cpp
-	kdl/kinfam_io.cpp
-	kdl/segment.cpp
-	kdl/tree.cpp
-	kdl/treefksolverpos_recursive.cpp
-	kdl/treejnttojacsolver.cpp
-	kdl/utilities/error_stack.cpp
-	kdl/utilities/utility.cpp
-	kdl/utilities/utility_io.cpp
+  kdl/chain.cpp
+  kdl/chainfksolverpos_recursive.cpp
+  kdl/chainjnttojacsolver.cpp
+  kdl/frameacc.cpp
+  kdl/frames.cpp
+  kdl/frames_io.cpp
+  kdl/framevel.cpp
+  kdl/inertia.cpp
+  kdl/jacobian.cpp
+  kdl/jntarray.cpp
+  kdl/jntarrayacc.cpp
+  kdl/jntarrayvel.cpp
+  kdl/joint.cpp
+  kdl/kinfam_io.cpp
+  kdl/segment.cpp
+  kdl/tree.cpp
+  kdl/treefksolverpos_recursive.cpp
+  kdl/treejnttojacsolver.cpp
+  kdl/utilities/error_stack.cpp
+  kdl/utilities/utility.cpp
+  kdl/utilities/utility_io.cpp
 
-	Armature.hpp
-	Cache.hpp
-	ConstraintSet.hpp
-	ControlledObject.hpp
-	CopyPose.hpp
-	Distance.hpp
-	FixedObject.hpp
-	MovingFrame.hpp
-	Object.hpp
-	Scene.hpp
-	Solver.hpp
-	UncontrolledObject.hpp
-	WDLSSolver.hpp
-	WSDLSSolver.hpp
-	WorldObject.hpp
-	eigen_types.hpp
-	kdl/chain.hpp
-	kdl/chainfksolver.hpp
-	kdl/chainfksolverpos_recursive.hpp
-	kdl/chainjnttojacsolver.hpp
-	kdl/frameacc.hpp
-	kdl/frames.hpp
-	kdl/frames_io.hpp
-	kdl/framevel.hpp
-	kdl/inertia.hpp
-	kdl/jacobian.hpp
-	kdl/jntarray.hpp
-	kdl/jntarrayacc.hpp
-	kdl/jntarrayvel.hpp
-	kdl/joint.hpp
-	kdl/kinfam_io.hpp
-	kdl/segment.hpp
-	kdl/tree.hpp
-	kdl/treefksolver.hpp
-	kdl/treefksolverpos_recursive.hpp
-	kdl/treejnttojacsolver.hpp
-	kdl/utilities/error.h
-	kdl/utilities/error_stack.h
-	kdl/utilities/kdl-config.h
-	kdl/utilities/rall1d.h
-	kdl/utilities/rall2d.h
-	kdl/utilities/svd_eigen_HH.hpp
-	kdl/utilities/traits.h
-	kdl/utilities/utility.h
-	kdl/utilities/utility_io.h
+  Armature.hpp
+  Cache.hpp
+  ConstraintSet.hpp
+  ControlledObject.hpp
+  CopyPose.hpp
+  Distance.hpp
+  FixedObject.hpp
+  MovingFrame.hpp
+  Object.hpp
+  Scene.hpp
+  Solver.hpp
+  UncontrolledObject.hpp
+  WDLSSolver.hpp
+  WSDLSSolver.hpp
+  WorldObject.hpp
+  eigen_types.hpp
+  kdl/chain.hpp
+  kdl/chainfksolver.hpp
+  kdl/chainfksolverpos_recursive.hpp
+  kdl/chainjnttojacsolver.hpp
+  kdl/frameacc.hpp
+  kdl/frames.hpp
+  kdl/frames_io.hpp
+  kdl/framevel.hpp
+  kdl/inertia.hpp
+  kdl/jacobian.hpp
+  kdl/jntarray.hpp
+  kdl/jntarrayacc.hpp
+  kdl/jntarrayvel.hpp
+  kdl/joint.hpp
+  kdl/kinfam_io.hpp
+  kdl/segment.hpp
+  kdl/tree.hpp
+  kdl/treefksolver.hpp
+  kdl/treefksolverpos_recursive.hpp
+  kdl/treejnttojacsolver.hpp
+  kdl/utilities/error.h
+  kdl/utilities/error_stack.h
+  kdl/utilities/kdl-config.h
+  kdl/utilities/rall1d.h
+  kdl/utilities/rall2d.h
+  kdl/utilities/svd_eigen_HH.hpp
+  kdl/utilities/traits.h
+  kdl/utilities/utility.h
+  kdl/utilities/utility_io.h
 
-	kdl/frameacc.inl
-	kdl/frames.inl
-	kdl/framevel.inl
+  kdl/frameacc.inl
+  kdl/frames.inl
+  kdl/framevel.inl
 
-	${EIGEN3_HEADERS}
+  ${EIGEN3_HEADERS}
 )
 
 set(LIB
diff --git a/intern/libmv/CMakeLists.txt b/intern/libmv/CMakeLists.txt
index 67bf0de98b0d7ac73d4c7e76da153ef38c709c75..019364d84dfc236c26d43261cb0efe6d0b5d9a1c 100644
--- a/intern/libmv/CMakeLists.txt
+++ b/intern/libmv/CMakeLists.txt
@@ -23,14 +23,14 @@
 #       in that script too
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
 )
 
 set(SRC
-	libmv-capi.h
+  libmv-capi.h
 )
 
 set(LIB
@@ -38,207 +38,207 @@ set(LIB
 )
 
 if(WITH_LIBMV)
-	add_definitions(${GFLAGS_DEFINES})
-	add_definitions(${GLOG_DEFINES})
-	add_definitions(${CERES_DEFINES})
-	add_definitions(-DLIBMV_GFLAGS_NAMESPACE=${GFLAGS_NAMESPACE})
-
-	list(APPEND INC
-		${GFLAGS_INCLUDE_DIRS}
-		${GLOG_INCLUDE_DIRS}
-		../../extern/ceres/include
-		../../extern/ceres/config
-		../guardedalloc
-	)
-
-	list(APPEND INC_SYS
-		${EIGEN3_INCLUDE_DIRS}
-		${PNG_INCLUDE_DIRS}
-		${ZLIB_INCLUDE_DIRS}
-	)
-
-	list(APPEND LIB
-		extern_ceres
-		extern_glog
-	)
-
-	add_definitions(
-		-DWITH_LIBMV_GUARDED_ALLOC
-		-DLIBMV_NO_FAST_DETECTOR=
-	)
-
-	list(APPEND SRC
-		intern/autotrack.cc
-		intern/camera_intrinsics.cc
-		intern/detector.cc
-		intern/frame_accessor.cc
-		intern/homography.cc
-		intern/image.cc
-		intern/logging.cc
-		intern/reconstruction.cc
-		intern/track_region.cc
-		intern/tracks.cc
-		intern/tracksN.cc
-		libmv/autotrack/autotrack.cc
-		libmv/autotrack/predict_tracks.cc
-		libmv/autotrack/tracks.cc
-		libmv/base/aligned_malloc.cc
-		libmv/image/array_nd.cc
-		libmv/image/convolve.cc
-		libmv/multiview/conditioning.cc
-		libmv/multiview/euclidean_resection.cc
-		libmv/multiview/fundamental.cc
-		libmv/multiview/homography.cc
-		libmv/multiview/panography.cc
-		libmv/multiview/panography_kernel.cc
-		libmv/multiview/projection.cc
-		libmv/multiview/triangulation.cc
-		libmv/numeric/numeric.cc
-		libmv/numeric/poly.cc
-		libmv/simple_pipeline/bundle.cc
-		libmv/simple_pipeline/camera_intrinsics.cc
-		libmv/simple_pipeline/detect.cc
-		libmv/simple_pipeline/distortion_models.cc
-		libmv/simple_pipeline/initialize_reconstruction.cc
-		libmv/simple_pipeline/intersect.cc
-		libmv/simple_pipeline/keyframe_selection.cc
-		libmv/simple_pipeline/modal_solver.cc
-		libmv/simple_pipeline/pipeline.cc
-		libmv/simple_pipeline/reconstruction.cc
-		libmv/simple_pipeline/reconstruction_scale.cc
-		libmv/simple_pipeline/resect.cc
-		libmv/simple_pipeline/tracks.cc
-		libmv/tracking/brute_region_tracker.cc
-		libmv/tracking/hybrid_region_tracker.cc
-		libmv/tracking/klt_region_tracker.cc
-		libmv/tracking/pyramid_region_tracker.cc
-		libmv/tracking/retrack_region_tracker.cc
-		libmv/tracking/track_region.cc
-		libmv/tracking/trklt_region_tracker.cc
-
-
-		intern/autotrack.h
-		intern/camera_intrinsics.h
-		intern/detector.h
-		intern/frame_accessor.h
-		intern/homography.h
-		intern/image.h
-		intern/logging.h
-		intern/reconstruction.h
-		intern/track_region.h
-		intern/tracks.h
-		intern/tracksN.h
-		libmv/autotrack/autotrack.h
-		libmv/autotrack/callbacks.h
-		libmv/autotrack/frame_accessor.h
-		libmv/autotrack/marker.h
-		libmv/autotrack/model.h
-		libmv/autotrack/predict_tracks.h
-		libmv/autotrack/quad.h
-		libmv/autotrack/reconstruction.h
-		libmv/autotrack/region.h
-		libmv/autotrack/tracks.h
-		libmv/base/aligned_malloc.h
-		libmv/base/id_generator.h
-		libmv/base/scoped_ptr.h
-		libmv/base/vector.h
-		libmv/base/vector_utils.h
-		libmv/image/array_nd.h
-		libmv/image/convolve.h
-		libmv/image/correlation.h
-		libmv/image/image_converter.h
-		libmv/image/image_drawing.h
-		libmv/image/image.h
-		libmv/image/sample.h
-		libmv/image/tuple.h
-		libmv/logging/logging.h
-		libmv/multiview/conditioning.h
-		libmv/multiview/euclidean_resection.h
-		libmv/multiview/fundamental.h
-		libmv/multiview/homography_error.h
-		libmv/multiview/homography.h
-		libmv/multiview/homography_parameterization.h
-		libmv/multiview/nviewtriangulation.h
-		libmv/multiview/panography.h
-		libmv/multiview/panography_kernel.h
-		libmv/multiview/projection.h
-		libmv/multiview/resection.h
-		libmv/multiview/triangulation.h
-		libmv/multiview/two_view_kernel.h
-		libmv/numeric/dogleg.h
-		libmv/numeric/function_derivative.h
-		libmv/numeric/levenberg_marquardt.h
-		libmv/numeric/numeric.h
-		libmv/numeric/poly.h
-		libmv/simple_pipeline/bundle.h
-		libmv/simple_pipeline/callbacks.h
-		libmv/simple_pipeline/camera_intrinsics.h
-		libmv/simple_pipeline/camera_intrinsics_impl.h
-		libmv/simple_pipeline/detect.h
-		libmv/simple_pipeline/distortion_models.h
-		libmv/simple_pipeline/initialize_reconstruction.h
-		libmv/simple_pipeline/intersect.h
-		libmv/simple_pipeline/keyframe_selection.h
-		libmv/simple_pipeline/modal_solver.h
-		libmv/simple_pipeline/pipeline.h
-		libmv/simple_pipeline/reconstruction.h
-		libmv/simple_pipeline/reconstruction_scale.h
-		libmv/simple_pipeline/resect.h
-		libmv/simple_pipeline/tracks.h
-		libmv/tracking/brute_region_tracker.h
-		libmv/tracking/hybrid_region_tracker.h
-		libmv/tracking/kalman_filter.h
-		libmv/tracking/klt_region_tracker.h
-		libmv/tracking/pyramid_region_tracker.h
-		libmv/tracking/region_tracker.h
-		libmv/tracking/retrack_region_tracker.h
-		libmv/tracking/track_region.h
-		libmv/tracking/trklt_region_tracker.h
-
-		third_party/msinttypes/inttypes.h
-		third_party/msinttypes/stdint.h
-	)
-
-
-	if(WITH_GTESTS)
-		blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "" "" "")
-
-		BLENDER_SRC_GTEST("libmv_predict_tracks" "./libmv/autotrack/predict_tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_tracks" "./libmv/autotrack/tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_scoped_ptr" "./libmv/base/scoped_ptr_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_vector" "./libmv/base/vector_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_array_nd" "./libmv/image/array_nd_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_convolve" "./libmv/image/convolve_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_image" "./libmv/image/image_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_sample" "./libmv/image/sample_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_tuple" "./libmv/image/tuple_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_euclidean_resection" "./libmv/multiview/euclidean_resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_fundamental" "./libmv/multiview/fundamental_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_homography" "./libmv/multiview/homography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_nviewtriangulation" "./libmv/multiview/nviewtriangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_panography" "./libmv/multiview/panography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_projection" "./libmv/multiview/projection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_resection" "./libmv/multiview/resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_triangulation" "./libmv/multiview/triangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_dogleg" "./libmv/numeric/dogleg_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_function_derivative" "./libmv/numeric/function_derivative_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_levenberg_marquardt" "./libmv/numeric/levenberg_marquardt_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_numeric" "./libmv/numeric/numeric_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_poly" "./libmv/numeric/poly_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_camera_intrinsics" "./libmv/simple_pipeline/camera_intrinsics_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_detect" "./libmv/simple_pipeline/detect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_intersect" "./libmv/simple_pipeline/intersect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_keyframe_selection" "./libmv/simple_pipeline/keyframe_selection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_modal_solver" "./libmv/simple_pipeline/modal_solver_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_resect" "./libmv/simple_pipeline/resect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_brute_region_tracker" "./libmv/tracking/brute_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_klt_region_tracker" "./libmv/tracking/klt_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-		BLENDER_SRC_GTEST("libmv_pyramid_region_tracker" "./libmv/tracking/pyramid_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
-	endif()
+  add_definitions(${GFLAGS_DEFINES})
+  add_definitions(${GLOG_DEFINES})
+  add_definitions(${CERES_DEFINES})
+  add_definitions(-DLIBMV_GFLAGS_NAMESPACE=${GFLAGS_NAMESPACE})
+
+  list(APPEND INC
+    ${GFLAGS_INCLUDE_DIRS}
+    ${GLOG_INCLUDE_DIRS}
+    ../../extern/ceres/include
+    ../../extern/ceres/config
+    ../guardedalloc
+  )
+
+  list(APPEND INC_SYS
+    ${EIGEN3_INCLUDE_DIRS}
+    ${PNG_INCLUDE_DIRS}
+    ${ZLIB_INCLUDE_DIRS}
+  )
+
+  list(APPEND LIB
+    extern_ceres
+    extern_glog
+  )
+
+  add_definitions(
+    -DWITH_LIBMV_GUARDED_ALLOC
+    -DLIBMV_NO_FAST_DETECTOR=
+  )
+
+  list(APPEND SRC
+    intern/autotrack.cc
+    intern/camera_intrinsics.cc
+    intern/detector.cc
+    intern/frame_accessor.cc
+    intern/homography.cc
+    intern/image.cc
+    intern/logging.cc
+    intern/reconstruction.cc
+    intern/track_region.cc
+    intern/tracks.cc
+    intern/tracksN.cc
+    libmv/autotrack/autotrack.cc
+    libmv/autotrack/predict_tracks.cc
+    libmv/autotrack/tracks.cc
+    libmv/base/aligned_malloc.cc
+    libmv/image/array_nd.cc
+    libmv/image/convolve.cc
+    libmv/multiview/conditioning.cc
+    libmv/multiview/euclidean_resection.cc
+    libmv/multiview/fundamental.cc
+    libmv/multiview/homography.cc
+    libmv/multiview/panography.cc
+    libmv/multiview/panography_kernel.cc
+    libmv/multiview/projection.cc
+    libmv/multiview/triangulation.cc
+    libmv/numeric/numeric.cc
+    libmv/numeric/poly.cc
+    libmv/simple_pipeline/bundle.cc
+    libmv/simple_pipeline/camera_intrinsics.cc
+    libmv/simple_pipeline/detect.cc
+    libmv/simple_pipeline/distortion_models.cc
+    libmv/simple_pipeline/initialize_reconstruction.cc
+    libmv/simple_pipeline/intersect.cc
+    libmv/simple_pipeline/keyframe_selection.cc
+    libmv/simple_pipeline/modal_solver.cc
+    libmv/simple_pipeline/pipeline.cc
+    libmv/simple_pipeline/reconstruction.cc
+    libmv/simple_pipeline/reconstruction_scale.cc
+    libmv/simple_pipeline/resect.cc
+    libmv/simple_pipeline/tracks.cc
+    libmv/tracking/brute_region_tracker.cc
+    libmv/tracking/hybrid_region_tracker.cc
+    libmv/tracking/klt_region_tracker.cc
+    libmv/tracking/pyramid_region_tracker.cc
+    libmv/tracking/retrack_region_tracker.cc
+    libmv/tracking/track_region.cc
+    libmv/tracking/trklt_region_tracker.cc
+
+
+    intern/autotrack.h
+    intern/camera_intrinsics.h
+    intern/detector.h
+    intern/frame_accessor.h
+    intern/homography.h
+    intern/image.h
+    intern/logging.h
+    intern/reconstruction.h
+    intern/track_region.h
+    intern/tracks.h
+    intern/tracksN.h
+    libmv/autotrack/autotrack.h
+    libmv/autotrack/callbacks.h
+    libmv/autotrack/frame_accessor.h
+    libmv/autotrack/marker.h
+    libmv/autotrack/model.h
+    libmv/autotrack/predict_tracks.h
+    libmv/autotrack/quad.h
+    libmv/autotrack/reconstruction.h
+    libmv/autotrack/region.h
+    libmv/autotrack/tracks.h
+    libmv/base/aligned_malloc.h
+    libmv/base/id_generator.h
+    libmv/base/scoped_ptr.h
+    libmv/base/vector.h
+    libmv/base/vector_utils.h
+    libmv/image/array_nd.h
+    libmv/image/convolve.h
+    libmv/image/correlation.h
+    libmv/image/image_converter.h
+    libmv/image/image_drawing.h
+    libmv/image/image.h
+    libmv/image/sample.h
+    libmv/image/tuple.h
+    libmv/logging/logging.h
+    libmv/multiview/conditioning.h
+    libmv/multiview/euclidean_resection.h
+    libmv/multiview/fundamental.h
+    libmv/multiview/homography_error.h
+    libmv/multiview/homography.h
+    libmv/multiview/homography_parameterization.h
+    libmv/multiview/nviewtriangulation.h
+    libmv/multiview/panography.h
+    libmv/multiview/panography_kernel.h
+    libmv/multiview/projection.h
+    libmv/multiview/resection.h
+    libmv/multiview/triangulation.h
+    libmv/multiview/two_view_kernel.h
+    libmv/numeric/dogleg.h
+    libmv/numeric/function_derivative.h
+    libmv/numeric/levenberg_marquardt.h
+    libmv/numeric/numeric.h
+    libmv/numeric/poly.h
+    libmv/simple_pipeline/bundle.h
+    libmv/simple_pipeline/callbacks.h
+    libmv/simple_pipeline/camera_intrinsics.h
+    libmv/simple_pipeline/camera_intrinsics_impl.h
+    libmv/simple_pipeline/detect.h
+    libmv/simple_pipeline/distortion_models.h
+    libmv/simple_pipeline/initialize_reconstruction.h
+    libmv/simple_pipeline/intersect.h
+    libmv/simple_pipeline/keyframe_selection.h
+    libmv/simple_pipeline/modal_solver.h
+    libmv/simple_pipeline/pipeline.h
+    libmv/simple_pipeline/reconstruction.h
+    libmv/simple_pipeline/reconstruction_scale.h
+    libmv/simple_pipeline/resect.h
+    libmv/simple_pipeline/tracks.h
+    libmv/tracking/brute_region_tracker.h
+    libmv/tracking/hybrid_region_tracker.h
+    libmv/tracking/kalman_filter.h
+    libmv/tracking/klt_region_tracker.h
+    libmv/tracking/pyramid_region_tracker.h
+    libmv/tracking/region_tracker.h
+    libmv/tracking/retrack_region_tracker.h
+    libmv/tracking/track_region.h
+    libmv/tracking/trklt_region_tracker.h
+
+    third_party/msinttypes/inttypes.h
+    third_party/msinttypes/stdint.h
+  )
+
+
+  if(WITH_GTESTS)
+    blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "" "" "")
+
+    BLENDER_SRC_GTEST("libmv_predict_tracks" "./libmv/autotrack/predict_tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_tracks" "./libmv/autotrack/tracks_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_scoped_ptr" "./libmv/base/scoped_ptr_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_vector" "./libmv/base/vector_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_array_nd" "./libmv/image/array_nd_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_convolve" "./libmv/image/convolve_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_image" "./libmv/image/image_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_sample" "./libmv/image/sample_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_tuple" "./libmv/image/tuple_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_euclidean_resection" "./libmv/multiview/euclidean_resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_fundamental" "./libmv/multiview/fundamental_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_homography" "./libmv/multiview/homography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_nviewtriangulation" "./libmv/multiview/nviewtriangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_panography" "./libmv/multiview/panography_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_projection" "./libmv/multiview/projection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_resection" "./libmv/multiview/resection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_triangulation" "./libmv/multiview/triangulation_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_dogleg" "./libmv/numeric/dogleg_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_function_derivative" "./libmv/numeric/function_derivative_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_levenberg_marquardt" "./libmv/numeric/levenberg_marquardt_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_numeric" "./libmv/numeric/numeric_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_poly" "./libmv/numeric/poly_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_camera_intrinsics" "./libmv/simple_pipeline/camera_intrinsics_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_detect" "./libmv/simple_pipeline/detect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_intersect" "./libmv/simple_pipeline/intersect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_keyframe_selection" "./libmv/simple_pipeline/keyframe_selection_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_modal_solver" "./libmv/simple_pipeline/modal_solver_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_resect" "./libmv/simple_pipeline/resect_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_brute_region_tracker" "./libmv/tracking/brute_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_klt_region_tracker" "./libmv/tracking/klt_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+    BLENDER_SRC_GTEST("libmv_pyramid_region_tracker" "./libmv/tracking/pyramid_region_tracker_test.cc" "libmv_test_dataset;bf_intern_libmv;extern_ceres")
+  endif()
 else()
-	list(APPEND SRC
-		intern/stub.cc
-	)
+  list(APPEND SRC
+    intern/stub.cc
+  )
 endif()
 
 blender_add_lib(bf_intern_libmv "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/intern/libmv/bundle.sh b/intern/libmv/bundle.sh
index 0c28a1c9773fcddc4b7c110a02a7835d88f67cce..08bdf491d3b53d014c67b863f1cbb2fde5e70c06 100755
--- a/intern/libmv/bundle.sh
+++ b/intern/libmv/bundle.sh
@@ -102,14 +102,14 @@ cat > CMakeLists.txt << EOF
 #       in that script too
 
 set(INC
-	.
+  .
 )
 
 set(INC_SYS
 )
 
 set(SRC
-	libmv-capi.h
+  libmv-capi.h
 )
 
 set(LIB
@@ -117,76 +117,76 @@ set(LIB
 )
 
 if(WITH_LIBMV)
-	add_definitions(\${GFLAGS_DEFINES})
-	add_definitions(\${GLOG_DEFINES})
-	add_definitions(\${CERES_DEFINES})
-	add_definitions(-DLIBMV_GFLAGS_NAMESPACE=\${GFLAGS_NAMESPACE})
-
-	list(APPEND INC
-		\${GFLAGS_INCLUDE_DIRS}
-		\${GLOG_INCLUDE_DIRS}
-		../../extern/ceres/include
-		../../extern/ceres/config
-		../guardedalloc
-	)
-
-	list(APPEND INC_SYS
-		\${EIGEN3_INCLUDE_DIRS}
-		\${PNG_INCLUDE_DIRS}
-		\${ZLIB_INCLUDE_DIRS}
-	)
-
-	list(APPEND LIB
-		extern_ceres
-		extern_glog
-	)
-
-	add_definitions(
-		-DWITH_LIBMV_GUARDED_ALLOC
-		-DLIBMV_NO_FAST_DETECTOR=
-	)
-
-	list(APPEND SRC
-		intern/autotrack.cc
-		intern/camera_intrinsics.cc
-		intern/detector.cc
-		intern/frame_accessor.cc
-		intern/homography.cc
-		intern/image.cc
-		intern/logging.cc
-		intern/reconstruction.cc
-		intern/track_region.cc
-		intern/tracks.cc
-		intern/tracksN.cc
+  add_definitions(\${GFLAGS_DEFINES})
+  add_definitions(\${GLOG_DEFINES})
+  add_definitions(\${CERES_DEFINES})
+  add_definitions(-DLIBMV_GFLAGS_NAMESPACE=\${GFLAGS_NAMESPACE})
+
+  list(APPEND INC
+    \${GFLAGS_INCLUDE_DIRS}
+    \${GLOG_INCLUDE_DIRS}
+    ../../extern/ceres/include
+    ../../extern/ceres/config
+    ../guardedalloc
+  )
+
+  list(APPEND INC_SYS
+    \${EIGEN3_INCLUDE_DIRS}
+    \${PNG_INCLUDE_DIRS}
+    \${ZLIB_INCLUDE_DIRS}
+  )
+
+  list(APPEND LIB
+    extern_ceres
+    extern_glog
+  )
+
+  add_definitions(
+    -DWITH_LIBMV_GUARDED_ALLOC
+    -DLIBMV_NO_FAST_DETECTOR=
+  )
+
+  list(APPEND SRC
+    intern/autotrack.cc
+    intern/camera_intrinsics.cc
+    intern/detector.cc
+    intern/frame_accessor.cc
+    intern/homography.cc
+    intern/image.cc
+    intern/logging.cc
+    intern/reconstruction.cc
+    intern/track_region.cc
+    intern/tracks.cc
+    intern/tracksN.cc
 ${sources}
 ${third_sources}
 
-		intern/autotrack.h
-		intern/camera_intrinsics.h
-		intern/detector.h
-		intern/frame_accessor.h
-		intern/homography.h
-		intern/image.h
-		intern/logging.h
-		intern/reconstruction.h
-		intern/track_region.h
-		intern/tracks.h
-		intern/tracksN.h
+    intern/autotrack.h
+    intern/camera_intrinsics.h
+    intern/detector.h
+    intern/frame_accessor.h
+    intern/homography.h
+    intern/image.h
+    intern/logging.h
+    intern/reconstruction.h
+    intern/track_region.h
+    intern/tracks.h
+    intern/tracksN.h
 ${headers}
 
 ${third_headers}
-	)
+  )
 
 
-	if(WITH_GTESTS)
-		blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "${INC}" "${INC_SYS}" "")
+  if(WITH_GTESTS)
+    blender_add_lib(libmv_test_dataset "./libmv/multiview/test_data_sets.cc" "${INC}" "${INC_SYS}" "")
 
 ${tests}
-	endif()
+  endif()
 else()
-	list(APPEND SRC
-		intern/stub.cc
-	)
+  list(APPEND SRC
+    intern/stub.cc
+  )
 endif()
 
 blender_add_lib(bf_intern_libmv "\${SRC}" "\${INC}" "\${INC_SYS}" "\${LIB}")
diff --git a/intern/numaapi/CMakeLists.txt b/intern/numaapi/CMakeLists.txt
index cc4fb27bdb74d55a1308b6a89d3e08d38bfe90f7..e65ae15ae4764a85b2f140126931aef1b94f2d10 100644
--- a/intern/numaapi/CMakeLists.txt
+++ b/intern/numaapi/CMakeLists.txt
@@ -17,7 +17,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	include
+  include
 )
 
 set(INC_SYS
@@ -25,13 +25,13 @@ set(INC_SYS
 )
 
 set(SRC
-	source/numaapi.c
-	source/numaapi_linux.c
-	source/numaapi_stub.c
-	source/numaapi_win32.c
+  source/numaapi.c
+  source/numaapi_linux.c
+  source/numaapi_stub.c
+  source/numaapi_win32.c
 
-	include/numaapi.h
-	source/build_config.h
+  include/numaapi.h
+  source/build_config.h
 )
 
 set(LIB
diff --git a/intern/smoke/CMakeLists.txt b/intern/smoke/CMakeLists.txt
index 232183fe33ccb7b535e7f13f8badd4d53e0efe0f..5c8e495fa93d4a711e314aae7509ef6521a8bfdd 100644
--- a/intern/smoke/CMakeLists.txt
+++ b/intern/smoke/CMakeLists.txt
@@ -19,62 +19,62 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	intern
-	../memutil
+  intern
+  ../memutil
 )
 
 set(INC_SYS
-	${BULLET_INCLUDE_DIRS}
-	${PNG_INCLUDE_DIRS}
-	${ZLIB_INCLUDE_DIRS}
+  ${BULLET_INCLUDE_DIRS}
+  ${PNG_INCLUDE_DIRS}
+  ${ZLIB_INCLUDE_DIRS}
 )
 
 set(SRC
-	intern/EIGENVALUE_HELPER.cpp
-	intern/FLUID_3D.cpp
-	intern/FLUID_3D_SOLVERS.cpp
-	intern/FLUID_3D_STATIC.cpp
-	intern/LU_HELPER.cpp
-	intern/SPHERE.cpp
-	intern/WTURBULENCE.cpp
-	intern/smoke_API.cpp
+  intern/EIGENVALUE_HELPER.cpp
+  intern/FLUID_3D.cpp
+  intern/FLUID_3D_SOLVERS.cpp
+  intern/FLUID_3D_STATIC.cpp
+  intern/LU_HELPER.cpp
+  intern/SPHERE.cpp
+  intern/WTURBULENCE.cpp
+  intern/smoke_API.cpp
 
-	extern/smoke_API.h
-	intern/EIGENVALUE_HELPER.h
-	intern/FFT_NOISE.h
-	intern/FLUID_3D.h
-	intern/IMAGE.h
-	intern/INTERPOLATE.h
-	intern/LU_HELPER.h
-	intern/MERSENNETWISTER.h
-	intern/OBSTACLE.h
-	intern/SPHERE.h
-	intern/VEC3.h
-	intern/WAVELET_NOISE.h
-	intern/WTURBULENCE.h
-	intern/tnt/jama_eig.h
-	intern/tnt/jama_lu.h
-	intern/tnt/tnt.h
-	intern/tnt/tnt_array1d.h
-	intern/tnt/tnt_array1d_utils.h
-	intern/tnt/tnt_array2d.h
-	intern/tnt/tnt_array2d_utils.h
-	intern/tnt/tnt_array3d.h
-	intern/tnt/tnt_array3d_utils.h
-	intern/tnt/tnt_cmat.h
-	intern/tnt/tnt_fortran_array1d.h
-	intern/tnt/tnt_fortran_array1d_utils.h
-	intern/tnt/tnt_fortran_array2d.h
-	intern/tnt/tnt_fortran_array2d_utils.h
-	intern/tnt/tnt_fortran_array3d.h
-	intern/tnt/tnt_fortran_array3d_utils.h
-	intern/tnt/tnt_i_refvec.h
-	intern/tnt/tnt_math_utils.h
-	intern/tnt/tnt_sparse_matrix_csr.h
-	intern/tnt/tnt_stopwatch.h
-	intern/tnt/tnt_subscript.h
-	intern/tnt/tnt_vec.h
-	intern/tnt/tnt_version.h
+  extern/smoke_API.h
+  intern/EIGENVALUE_HELPER.h
+  intern/FFT_NOISE.h
+  intern/FLUID_3D.h
+  intern/IMAGE.h
+  intern/INTERPOLATE.h
+  intern/LU_HELPER.h
+  intern/MERSENNETWISTER.h
+  intern/OBSTACLE.h
+  intern/SPHERE.h
+  intern/VEC3.h
+  intern/WAVELET_NOISE.h
+  intern/WTURBULENCE.h
+  intern/tnt/jama_eig.h
+  intern/tnt/jama_lu.h
+  intern/tnt/tnt.h
+  intern/tnt/tnt_array1d.h
+  intern/tnt/tnt_array1d_utils.h
+  intern/tnt/tnt_array2d.h
+  intern/tnt/tnt_array2d_utils.h
+  intern/tnt/tnt_array3d.h
+  intern/tnt/tnt_array3d_utils.h
+  intern/tnt/tnt_cmat.h
+  intern/tnt/tnt_fortran_array1d.h
+  intern/tnt/tnt_fortran_array1d_utils.h
+  intern/tnt/tnt_fortran_array2d.h
+  intern/tnt/tnt_fortran_array2d_utils.h
+  intern/tnt/tnt_fortran_array3d.h
+  intern/tnt/tnt_fortran_array3d_utils.h
+  intern/tnt/tnt_i_refvec.h
+  intern/tnt/tnt_math_utils.h
+  intern/tnt/tnt_sparse_matrix_csr.h
+  intern/tnt/tnt_stopwatch.h
+  intern/tnt/tnt_subscript.h
+  intern/tnt/tnt_vec.h
+  intern/tnt/tnt_version.h
 )
 
 set(LIB
@@ -84,16 +84,16 @@ set(LIB
 add_definitions(-DDDF_DEBUG=0)
 
 if(WITH_OPENMP)
-	add_definitions(-DPARALLEL=1)
+  add_definitions(-DPARALLEL=1)
 else()
-	add_definitions(-DPARALLEL=0)
+  add_definitions(-DPARALLEL=0)
 endif()
 
 if(WITH_FFTW3)
-	add_definitions(-DWITH_FFTW3)
-	list(APPEND INC_SYS
-		${FFTW3_INCLUDE_DIRS}
-	)
+  add_definitions(-DWITH_FFTW3)
+  list(APPEND INC_SYS
+    ${FFTW3_INCLUDE_DIRS}
+  )
 endif()
 
 blender_add_lib(bf_intern_smoke "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
diff --git a/release/windows/blendthumb/CMakeLists.txt b/release/windows/blendthumb/CMakeLists.txt
index 07c0d1ea1a83fe5c21ddafff9eed2ff3ae8245e6..45c583d1421f8b49cf20ecdad2c7f99ef2a7653d 100644
--- a/release/windows/blendthumb/CMakeLists.txt
+++ b/release/windows/blendthumb/CMakeLists.txt
@@ -27,10 +27,10 @@ include_directories(${ZLIB_INCLUDE})
 
 #Can manually add the sources using the set command as follows:
 set(SRC
-	src/BlenderThumb.cpp
-	src/BlendThumb.def
-	src/BlendThumb.rc
-	src/Dll.cpp
+  src/BlenderThumb.cpp
+  src/BlendThumb.def
+  src/BlendThumb.rc
+  src/Dll.cpp
 )
 
 add_library(BlendThumb SHARED ${SRC})
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 3ffd9db74e5ab1bf706f65820ea41c38f0ca94c0..93bebaed4b24db94d7560aaaf51fe8d48b5366bd 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,7 +1,7 @@
 
 # Python CTests
 if(WITH_BLENDER AND WITH_PYTHON)
-	add_subdirectory(python)
+  add_subdirectory(python)
 endif()
 
 # GTest
diff --git a/tests/python/CMakeLists.txt b/tests/python/CMakeLists.txt
index ad843c72b444cd28d55e7695634082cf93a5362d..fdd2efb69d133711dc9d46f438b16446c5cf0b1a 100644
--- a/tests/python/CMakeLists.txt
+++ b/tests/python/CMakeLists.txt
@@ -30,19 +30,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
 # ugh, any better way to do this on testing only?
 execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
 
-#~	if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
-#~		message(FATAL_ERROR "CMake test directory not found!")
-#~	endif()
+#~  if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
+#~      message(FATAL_ERROR "CMake test directory not found!")
+#~  endif()
 
 # all calls to blender use this
 if(APPLE)
-	if(${CMAKE_GENERATOR} MATCHES "Xcode")
-		set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
-	else()
-		set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
-	endif()
+  if(${CMAKE_GENERATOR} MATCHES "Xcode")
+    set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
+  else()
+    set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
+  endif()
 else()
-	set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
+  set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
 endif()
 
 # for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
@@ -53,94 +53,94 @@ endif()
 # ------------------------------------------------------------------------------
 # GENERAL PYTHON CORRECTNESS TESTS
 add_test(
-	NAME script_load_keymap
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_keymap_completeness.py
+  NAME script_load_keymap
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_keymap_completeness.py
 )
 
 add_test(
-	NAME script_load_addons
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_addons.py
+  NAME script_load_addons
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_load_addons.py
 )
 
 add_test(
-	NAME script_load_modules
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_load_py_modules.py
+  NAME script_load_modules
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_load_py_modules.py
 )
 
 # test running operators doesn't segfault under various conditions
 if(USE_EXPERIMENTAL_TESTS)
-	add_test(
-		NAME script_run_operators
-		COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-		--python ${CMAKE_CURRENT_LIST_DIR}/bl_run_operators.py
-	)
+  add_test(
+    NAME script_run_operators
+    COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+    --python ${CMAKE_CURRENT_LIST_DIR}/bl_run_operators.py
+  )
 endif()
 
 # ------------------------------------------------------------------------------
 # PY API TESTS
 add_test(
-	NAME script_pyapi_bpy_path
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_path.py
+  NAME script_pyapi_bpy_path
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_path.py
 )
 
 add_test(
-	NAME script_pyapi_bpy_utils_units
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_utils_units.py
+  NAME script_pyapi_bpy_utils_units
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_utils_units.py
 )
 
 add_test(
-	NAME script_pyapi_mathutils
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_mathutils.py
+  NAME script_pyapi_mathutils
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_mathutils.py
 )
 
 add_test(
-	NAME script_pyapi_idprop
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop.py
+  NAME script_pyapi_idprop
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop.py
 )
 
 add_test(
-	NAME script_pyapi_idprop_datablock
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop_datablock.py
+  NAME script_pyapi_idprop_datablock
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop_datablock.py
 )
 
 # ------------------------------------------------------------------------------
 # MODELING TESTS
 add_test(
-	NAME bmesh_bevel
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/modeling/bevel_regression.blend
-	--python-text run_tests
+  NAME bmesh_bevel
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/modeling/bevel_regression.blend
+  --python-text run_tests
 )
 
 add_test(
-	NAME bmesh_boolean
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/modeling/bool_regression.blend
-	--python-text run_tests
+  NAME bmesh_boolean
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/modeling/bool_regression.blend
+  --python-text run_tests
 )
 
 add_test(
-	NAME bmesh_split_faces
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/modeling/split_faces_test.blend
-	--python-text run_tests
+  NAME bmesh_split_faces
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/modeling/split_faces_test.blend
+  --python-text run_tests
 )
 
 # ------------------------------------------------------------------------------
 # MODIFIERS TESTS
 add_test(
-	NAME object_modifier_array
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/modifier_stack/array_test.blend
-	--python-text run_tests
+  NAME object_modifier_array
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/modifier_stack/array_test.blend
+  --python-text run_tests
 )
 
 # ------------------------------------------------------------------------------
@@ -150,67 +150,67 @@ add_test(
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME import_obj_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/cube.obj'\)
-	--md5=39cce4bacac2d1b18fc470380279bc15 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_obj_cube.blend
+  NAME import_obj_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/cube.obj'\)
+  --md5=39cce4bacac2d1b18fc470380279bc15 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_obj_cube.blend
 )
 
 add_test(
-	NAME import_obj_nurbs_cyclic
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/nurbs_cyclic.obj'\)
-	--md5=ad3c307e5883224a0492378cd32691ab --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_obj_nurbs_cyclic.blend
+  NAME import_obj_nurbs_cyclic
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/nurbs_cyclic.obj'\)
+  --md5=ad3c307e5883224a0492378cd32691ab --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_obj_nurbs_cyclic.blend
 )
 
 add_test(
-	NAME import_obj_makehuman
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/makehuman.obj'\)
-	--md5=c9f78b185e58358daa4ecaecfa75464e --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_obj_makehuman.blend
+  NAME import_obj_makehuman
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/makehuman.obj'\)
+  --md5=c9f78b185e58358daa4ecaecfa75464e --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_obj_makehuman.blend
 )
 endif()
 
 # OBJ Export tests
 add_test(
-	NAME export_obj_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_cube.obj',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_obj_cube.obj
-	--md5_source=${TEST_OUT_DIR}/export_obj_cube.mtl
-	--md5=95832f81160f07101dc566cb286a9f76 --md5_method=FILE
+  NAME export_obj_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_cube.obj',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_obj_cube.obj
+  --md5_source=${TEST_OUT_DIR}/export_obj_cube.mtl
+  --md5=95832f81160f07101dc566cb286a9f76 --md5_method=FILE
 )
 
 add_test(
-	NAME export_obj_nurbs
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_nurbs.obj',use_selection=False,use_nurbs=True\)
-	--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.obj
-	--md5_source=${TEST_OUT_DIR}/export_obj_nurbs.mtl
-	--md5=a733ae4fa4a591ea9b0912da3af042de --md5_method=FILE
+  NAME export_obj_nurbs
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_nurbs.obj',use_selection=False,use_nurbs=True\)
+  --md5_source=${TEST_OUT_DIR}/export_obj_nurbs.obj
+  --md5_source=${TEST_OUT_DIR}/export_obj_nurbs.mtl
+  --md5=a733ae4fa4a591ea9b0912da3af042de --md5_method=FILE
 )
 
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME export_obj_all_objects
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_all_objects.obj',use_selection=False,use_nurbs=True\)
-	--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.obj
-	--md5_source=${TEST_OUT_DIR}/export_obj_all_objects.mtl
-	--md5=04b3ed97cede07a19548fc518ce9f8ca --md5_method=FILE
+  NAME export_obj_all_objects
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/export_obj_all_objects.obj',use_selection=False,use_nurbs=True\)
+  --md5_source=${TEST_OUT_DIR}/export_obj_all_objects.obj
+  --md5_source=${TEST_OUT_DIR}/export_obj_all_objects.mtl
+  --md5=04b3ed97cede07a19548fc518ce9f8ca --md5_method=FILE
 )
 endif()
 
@@ -218,64 +218,64 @@ endif()
 
 # PLY Import tests
 add_test(
-	NAME import_ply_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/cube_ascii.ply'\)
-	--md5=527134343c27fc0ea73115b85fbfd3ac --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_ply_cube.blend
+  NAME import_ply_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/cube_ascii.ply'\)
+  --md5=527134343c27fc0ea73115b85fbfd3ac --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_ply_cube.blend
 )
 
 add_test(
-	NAME import_ply_bunny
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/bunny2.ply'\)
-	--md5=6ea5b8533400a17accf928b8fd024eaa --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_ply_bunny.blend
+  NAME import_ply_bunny
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/bunny2.ply'\)
+  --md5=6ea5b8533400a17accf928b8fd024eaa --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_ply_bunny.blend
 )
 
 add_test(
-	NAME import_ply_small_holes
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/many_small_holes.ply'\)
-	--md5=c3093e26ecae5b6d59fbbcf2a0d0b39f --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_ply_small_holes.blend
+  NAME import_ply_small_holes
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/many_small_holes.ply'\)
+  --md5=c3093e26ecae5b6d59fbbcf2a0d0b39f --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_ply_small_holes.blend
 )
 
 # PLY Export
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME export_ply_cube_all_data
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_cube_all_data.ply'\)
-	--md5_source=${TEST_OUT_DIR}/export_ply_cube_all_data.ply
-	--md5=6adc3748ceae8298496f99d0e7e76c15 --md5_method=FILE
+  NAME export_ply_cube_all_data
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_cube_all_data.ply'\)
+  --md5_source=${TEST_OUT_DIR}/export_ply_cube_all_data.ply
+  --md5=6adc3748ceae8298496f99d0e7e76c15 --md5_method=FILE
 )
 
 add_test(
-	NAME export_ply_suzanne_all_data
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply'\)
-	--md5_source=${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply
-	--md5=68ba23f02efd6511bfd093f45f703221 --md5_method=FILE
+  NAME export_ply_suzanne_all_data
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply'\)
+  --md5_source=${TEST_OUT_DIR}/export_ply_suzanne_all_data.ply
+  --md5=68ba23f02efd6511bfd093f45f703221 --md5_method=FILE
 )
 endif()
 
 add_test(
-	NAME export_ply_vertices # lame, add a better one
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_vertices.ply'\)
-	--md5_source=${TEST_OUT_DIR}/export_ply_vertices.ply
-	--md5=37faba0aa2014451b27f951afa92f870 --md5_method=FILE
+  NAME export_ply_vertices # lame, add a better one
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/export_ply_vertices.ply'\)
+  --md5_source=${TEST_OUT_DIR}/export_ply_vertices.ply
+  --md5=37faba0aa2014451b27f951afa92f870 --md5_method=FILE
 )
 
 
@@ -283,30 +283,30 @@ add_test(
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME import_stl_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/cube.stl'\)
-	--md5=8ceb5bb7e1cb5f4342fa1669988c66b4 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_stl_cube.blend
+  NAME import_stl_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/cube.stl'\)
+  --md5=8ceb5bb7e1cb5f4342fa1669988c66b4 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_stl_cube.blend
 )
 
 add_test(
-	NAME import_stl_conrod
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/conrod.stl'\)
-	--md5=690a4b8eb9002dcd8631c5a575ea7348 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_stl_conrod.blend
+  NAME import_stl_conrod
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/conrod.stl'\)
+  --md5=690a4b8eb9002dcd8631c5a575ea7348 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_stl_conrod.blend
 )
 
 add_test(
-	NAME import_stl_knot_max_simplified
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/knot_max_simplified.stl'\)
-	--md5=baf82803f45a84ec4ddbad9cef57dd3e --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_stl_knot_max_simplified.blend
+  NAME import_stl_knot_max_simplified
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/knot_max_simplified.stl'\)
+  --md5=baf82803f45a84ec4ddbad9cef57dd3e --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_stl_knot_max_simplified.blend
 )
 endif()
 
@@ -314,33 +314,33 @@ endif()
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME export_stl_cube_all_data
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_cube_all_data.stl'\)
-	--md5_source=${TEST_OUT_DIR}/export_stl_cube_all_data.stl
-	--md5=64cb97c0cabb015e1c3f76369835075a --md5_method=FILE
+  NAME export_stl_cube_all_data
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_cube_all_data.stl'\)
+  --md5_source=${TEST_OUT_DIR}/export_stl_cube_all_data.stl
+  --md5=64cb97c0cabb015e1c3f76369835075a --md5_method=FILE
 )
 
 add_test(
-	NAME export_stl_suzanne_all_data
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl'\)
-	--md5_source=${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl
-	--md5=e9b23c97c139ad64961c635105bb9192 --md5_method=FILE
+  NAME export_stl_suzanne_all_data
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl'\)
+  --md5_source=${TEST_OUT_DIR}/export_stl_suzanne_all_data.stl
+  --md5=e9b23c97c139ad64961c635105bb9192 --md5_method=FILE
 )
 
 add_test(
-	NAME export_stl_vertices # lame, add a better one
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_vertices.stl'\)
-	--md5_source=${TEST_OUT_DIR}/export_stl_vertices.stl
-	--md5=3fd3c877e573beeebc782532cc005820 --md5_method=FILE
+  NAME export_stl_vertices # lame, add a better one
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_mesh.stl\(filepath='${TEST_OUT_DIR}/export_stl_vertices.stl'\)
+  --md5_source=${TEST_OUT_DIR}/export_stl_vertices.stl
+  --md5=3fd3c877e573beeebc782532cc005820 --md5_method=FILE
 )
 endif()
 
@@ -349,61 +349,61 @@ endif()
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME import_x3d_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/color_cube.x3d'\)
-	--md5=3fae9be004199c145941cd3f9f80ad7b --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_x3d_cube.blend
+  NAME import_x3d_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/color_cube.x3d'\)
+  --md5=3fae9be004199c145941cd3f9f80ad7b --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_x3d_cube.blend
 )
 
 add_test(
-	NAME import_x3d_teapot
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/teapot.x3d'\)
-	--md5=8ee196c71947dce4199d55698501691e --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_x3d_teapot.blend
+  NAME import_x3d_teapot
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/teapot.x3d'\)
+  --md5=8ee196c71947dce4199d55698501691e --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_x3d_teapot.blend
 )
 
 add_test(
-	NAME import_x3d_suzanne_material
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/suzanne_material.x3d'\)
-	--md5=3edea1353257d8b5a5f071942f417be6 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_x3d_suzanne_material.blend
+  NAME import_x3d_suzanne_material
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.x3d\(filepath='${TEST_SRC_DIR}/io_tests/x3d/suzanne_material.x3d'\)
+  --md5=3edea1353257d8b5a5f071942f417be6 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_x3d_suzanne_material.blend
 )
 
 # X3D Export
 add_test(
-	NAME export_x3d_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_cube.x3d',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_x3d_cube.x3d
-	--md5=05312d278fe41da33560fdfb9bdb268f --md5_method=FILE
+  NAME export_x3d_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_cube.x3d',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_x3d_cube.x3d
+  --md5=05312d278fe41da33560fdfb9bdb268f --md5_method=FILE
 )
 
 add_test(
-	NAME export_x3d_nurbs
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_nurbs.x3d',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_x3d_nurbs.x3d
-	--md5=4286d4a2aa507ef78b22ddcbdcc88481 --md5_method=FILE
+  NAME export_x3d_nurbs
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_nurbs.x3d',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_x3d_nurbs.x3d
+  --md5=4286d4a2aa507ef78b22ddcbdcc88481 --md5_method=FILE
 )
 
 add_test(
-	NAME export_x3d_all_objects
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_all_objects.x3d',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_x3d_all_objects.x3d
-	--md5=f5f9fa4c5619a0eeab66685aafd2f7f0 --md5_method=FILE
+  NAME export_x3d_all_objects
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.x3d\(filepath='${TEST_OUT_DIR}/export_x3d_all_objects.x3d',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_x3d_all_objects.x3d
+  --md5=f5f9fa4c5619a0eeab66685aafd2f7f0 --md5_method=FILE
 )
 endif()
 
@@ -413,30 +413,30 @@ endif()
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME import_3ds_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/cube.3ds'\)
-	--md5=cb5a45c35a343c3f5beca2a918472951 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_3ds_cube.blend
+  NAME import_3ds_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/cube.3ds'\)
+  --md5=cb5a45c35a343c3f5beca2a918472951 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_3ds_cube.blend
 )
 
 add_test(
-	NAME import_3ds_hierarchy_lara
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_lara.3ds'\)
-	--md5=766c873d9fdb5f190e43796cfbae63b6 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_lara.blend
+  NAME import_3ds_hierarchy_lara
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_lara.3ds'\)
+  --md5=766c873d9fdb5f190e43796cfbae63b6 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_lara.blend
 )
 
 add_test(
-	NAME import_3ds_hierarchy_greek_trireme
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_greek_trireme.3ds'\)
-	--md5=b62ee30101e8999cb91ef4f8a8760056 --md5_method=SCENE
-	--write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_greek_trireme.blend
+  NAME import_3ds_hierarchy_greek_trireme
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.import_scene.autodesk_3ds\(filepath='${TEST_SRC_DIR}/io_tests/3ds/hierarchy_greek_trireme.3ds'\)
+  --md5=b62ee30101e8999cb91ef4f8a8760056 --md5_method=SCENE
+  --write-blend=${TEST_OUT_DIR}/import_3ds_hierarchy_greek_trireme.blend
 )
 endif()
 
@@ -444,33 +444,33 @@ endif()
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME export_3ds_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_cube.3ds',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_3ds_cube.3ds
-	--md5=a31f5071b6c6dc7445b9099cdc7f63b3 --md5_method=FILE
+  NAME export_3ds_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_cube.3ds',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_3ds_cube.3ds
+  --md5=a31f5071b6c6dc7445b9099cdc7f63b3 --md5_method=FILE
 )
 
 add_test(
-	NAME export_3ds_nurbs
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_nurbs.3ds',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_3ds_nurbs.3ds
-	--md5=5bdd21be3c80d814fbc83cb25edb08c2 --md5_method=FILE
+  NAME export_3ds_nurbs
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_nurbs.3ds',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_3ds_nurbs.3ds
+  --md5=5bdd21be3c80d814fbc83cb25edb08c2 --md5_method=FILE
 )
 
 add_test(
-	NAME export_3ds_all_objects
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_all_objects.3ds',use_selection=False\)
-	--md5_source=${TEST_OUT_DIR}/export_3ds_all_objects.3ds
-	--md5=68447761ab0ca38e1e22e7c177ed48a8 --md5_method=FILE
+  NAME export_3ds_all_objects
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.autodesk_3ds\(filepath='${TEST_OUT_DIR}/export_3ds_all_objects.3ds',use_selection=False\)
+  --md5_source=${TEST_OUT_DIR}/export_3ds_all_objects.3ds
+  --md5=68447761ab0ca38e1e22e7c177ed48a8 --md5_method=FILE
 )
 endif()
 
@@ -481,160 +481,160 @@ endif()
 # disabled until updated & working
 if(FALSE)
 add_test(
-	NAME export_fbx_cube
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_cube.fbx',use_selection=False,use_metadata=False\)
-	--md5_source=${TEST_OUT_DIR}/export_fbx_cube.fbx
-	--md5=59a35577462f95f9a0b4e6035226ce9b --md5_method=FILE
+  NAME export_fbx_cube
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_cube.fbx',use_selection=False,use_metadata=False\)
+  --md5_source=${TEST_OUT_DIR}/export_fbx_cube.fbx
+  --md5=59a35577462f95f9a0b4e6035226ce9b --md5_method=FILE
 )
 
 add_test(
-	NAME export_fbx_nurbs
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_nurbs.fbx',use_selection=False,use_metadata=False\)
-	--md5_source=${TEST_OUT_DIR}/export_fbx_nurbs.fbx
-	--md5=d31875f18f613fa0c3b16e978f87f6f8 --md5_method=FILE
+  NAME export_fbx_nurbs
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_nurbs.fbx',use_selection=False,use_metadata=False\)
+  --md5_source=${TEST_OUT_DIR}/export_fbx_nurbs.fbx
+  --md5=d31875f18f613fa0c3b16e978f87f6f8 --md5_method=FILE
 )
 
 add_test(
-	NAME export_fbx_all_objects
-	COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-	${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
-	--python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
-	--run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_all_objects.fbx',use_selection=False,use_metadata=False\)
-	--md5_source=${TEST_OUT_DIR}/export_fbx_all_objects.fbx
-	--md5=b35eb2a9d0e73762ecae2278c25a38ac --md5_method=FILE
+  NAME export_fbx_all_objects
+  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  ${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
+  --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
+  --run={'FINISHED'}&bpy.ops.export_scene.fbx\(filepath='${TEST_OUT_DIR}/export_fbx_all_objects.fbx',use_selection=False,use_metadata=False\)
+  --md5_source=${TEST_OUT_DIR}/export_fbx_all_objects.fbx
+  --md5=b35eb2a9d0e73762ecae2278c25a38ac --md5_method=FILE
 )
 endif()
 
 # Run Python script outside Blender.
 function(add_python_test testname testscript)
-	if(MSVC)
-		add_test(
-			NAME ${testname}
-			COMMAND
-				"$<TARGET_FILE_DIR:blender>/${BLENDER_VERSION_MAJOR}.${BLENDER_VERSION_MINOR}/python/bin/python$<$<CONFIG:Debug>:_d>"
-				${testscript} ${ARGN}
-		)
-	else()
-		add_test(
-			NAME ${testname}
-			COMMAND ${testscript} ${ARGN}
-		)
-	endif()
+  if(MSVC)
+    add_test(
+      NAME ${testname}
+      COMMAND
+        "$<TARGET_FILE_DIR:blender>/${BLENDER_VERSION_MAJOR}.${BLENDER_VERSION_MINOR}/python/bin/python$<$<CONFIG:Debug>:_d>"
+        ${testscript} ${ARGN}
+    )
+  else()
+    add_test(
+      NAME ${testname}
+      COMMAND ${testscript} ${ARGN}
+    )
+  endif()
 endfunction()
 
 if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/render/ctests/shader")
-	macro(add_cycles_render_test subject)
-		if(WITH_CYCLES)
-			add_python_test(
-				cycles_${subject}
-				${CMAKE_CURRENT_LIST_DIR}/cycles_render_tests.py
-				-blender "$<TARGET_FILE:blender>"
-				-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
-				-idiff "${OPENIMAGEIO_IDIFF}"
-				-outdir "${TEST_OUT_DIR}/cycles"
-			)
-		endif()
-
-		if(WITH_OPENGL_RENDER_TESTS AND (NOT ${subject} MATCHES "bake"))
-			add_python_test(
-				eevee_${subject}_test
-				${CMAKE_CURRENT_LIST_DIR}/eevee_render_tests.py
-				-blender "$<TARGET_FILE:blender>"
-				-testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
-				-idiff "${OPENIMAGEIO_IDIFF}"
-				-outdir "${TEST_OUT_DIR}/eevee"
-			)
-		endif()
-	endmacro()
-	add_cycles_render_test(bake)
-	add_cycles_render_test(bsdf)
-	add_cycles_render_test(denoise)
-	add_cycles_render_test(denoise_animation)
-	add_cycles_render_test(displacement)
-	add_cycles_render_test(hair)
-	add_cycles_render_test(image_data_types)
-	add_cycles_render_test(image_mapping)
-	add_cycles_render_test(image_texture_limit)
-	add_cycles_render_test(integrator)
-	add_cycles_render_test(light)
-	add_cycles_render_test(mesh)
-	add_cycles_render_test(motion_blur)
-	add_cycles_render_test(render_layer)
-	add_cycles_render_test(reports)
-	add_cycles_render_test(shader)
-	add_cycles_render_test(shadow_catcher)
-	add_cycles_render_test(sss)
-	add_cycles_render_test(volume)
+  macro(add_cycles_render_test subject)
+    if(WITH_CYCLES)
+      add_python_test(
+        cycles_${subject}
+        ${CMAKE_CURRENT_LIST_DIR}/cycles_render_tests.py
+        -blender "$<TARGET_FILE:blender>"
+        -testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
+        -idiff "${OPENIMAGEIO_IDIFF}"
+        -outdir "${TEST_OUT_DIR}/cycles"
+      )
+    endif()
+
+    if(WITH_OPENGL_RENDER_TESTS AND (NOT ${subject} MATCHES "bake"))
+      add_python_test(
+        eevee_${subject}_test
+        ${CMAKE_CURRENT_LIST_DIR}/eevee_render_tests.py
+        -blender "$<TARGET_FILE:blender>"
+        -testdir "${TEST_SRC_DIR}/render/ctests/${subject}"
+        -idiff "${OPENIMAGEIO_IDIFF}"
+        -outdir "${TEST_OUT_DIR}/eevee"
+      )
+    endif()
+  endmacro()
+  add_cycles_render_test(bake)
+  add_cycles_render_test(bsdf)
+  add_cycles_render_test(denoise)
+  add_cycles_render_test(denoise_animation)
+  add_cycles_render_test(displacement)
+  add_cycles_render_test(hair)
+  add_cycles_render_test(image_data_types)
+  add_cycles_render_test(image_mapping)
+  add_cycles_render_test(image_texture_limit)
+  add_cycles_render_test(integrator)
+  add_cycles_render_test(light)
+  add_cycles_render_test(mesh)
+  add_cycles_render_test(motion_blur)
+  add_cycles_render_test(render_layer)
+  add_cycles_render_test(reports)
+  add_cycles_render_test(shader)
+  add_cycles_render_test(shadow_catcher)
+  add_cycles_render_test(sss)
+  add_cycles_render_test(volume)
 elseif(WITH_CYCLES)
-	MESSAGE(STATUS "Disabling Cycles tests because tests folder does not exist")
+  MESSAGE(STATUS "Disabling Cycles tests because tests folder does not exist")
 endif()
 
 if(WITH_OPENGL_DRAW_TESTS)
-	if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/opengl")
-		# Use all subdirectories of opengl folder.
-		file(GLOB children RELATIVE ${TEST_SRC_DIR}/opengl ${TEST_SRC_DIR}/opengl/*)
-		foreach(child ${children})
-			# Resolve symlinks, useful to test production files with linked libraries.
-			get_filename_component(child_path ${TEST_SRC_DIR}/opengl/${child} REALPATH)
-			if(IS_DIRECTORY ${child_path})
-				file(GLOB_RECURSE blends "${child_path}/*.blend")
-				if(blends)
-					add_python_test(
-						opengl_draw_${child}
-						${CMAKE_CURRENT_LIST_DIR}/opengl_draw_tests.py
-						-blender "$<TARGET_FILE:blender>"
-						-testdir "${child_path}"
-						-idiff "${OPENIMAGEIO_IDIFF}"
-						-outdir "${TEST_OUT_DIR}/opengl_draw"
-					)
-				endif()
-			endif()
-		endforeach()
-	else()
-		MESSAGE(STATUS "Disabling OpenGL tests because tests folder does not exist")
-	endif()
+  if(OPENIMAGEIO_IDIFF AND EXISTS "${TEST_SRC_DIR}/opengl")
+    # Use all subdirectories of opengl folder.
+    file(GLOB children RELATIVE ${TEST_SRC_DIR}/opengl ${TEST_SRC_DIR}/opengl/*)
+    foreach(child ${children})
+      # Resolve symlinks, useful to test production files with linked libraries.
+      get_filename_component(child_path ${TEST_SRC_DIR}/opengl/${child} REALPATH)
+      if(IS_DIRECTORY ${child_path})
+        file(GLOB_RECURSE blends "${child_path}/*.blend")
+        if(blends)
+          add_python_test(
+            opengl_draw_${child}
+            ${CMAKE_CURRENT_LIST_DIR}/opengl_draw_tests.py
+            -blender "$<TARGET_FILE:blender>"
+            -testdir "${child_path}"
+            -idiff "${OPENIMAGEIO_IDIFF}"
+            -outdir "${TEST_OUT_DIR}/opengl_draw"
+          )
+        endif()
+      endif()
+    endforeach()
+  else()
+    MESSAGE(STATUS "Disabling OpenGL tests because tests folder does not exist")
+  endif()
 endif()
 
 
 if(WITH_ALEMBIC)
-	find_package_wrapper(Alembic)
-	if(NOT ALEMBIC_FOUND)
-		message(FATAL_ERROR "Alembic is enabled but cannot be found")
-	endif()
-	get_filename_component(real_include_dir ${ALEMBIC_INCLUDE_DIR} REALPATH)
-	get_filename_component(ALEMBIC_ROOT_DIR ${real_include_dir} DIRECTORY)
-
-	add_python_test(
-		alembic_tests
-		${CMAKE_CURRENT_LIST_DIR}/alembic_tests.py
-		--blender "$<TARGET_FILE:blender>"
-		--testdir "${TEST_SRC_DIR}/alembic"
-		--alembic-root "${ALEMBIC_ROOT_DIR}"
-	)
-
-	add_test(
-		NAME script_alembic_import
-		COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
-		--python ${CMAKE_CURRENT_LIST_DIR}/bl_alembic_import_test.py
-		--
-		--testdir "${TEST_SRC_DIR}/alembic"
-		--with-legacy-depsgraph=${WITH_LEGACY_DEPSGRAPH}
-	)
+  find_package_wrapper(Alembic)
+  if(NOT ALEMBIC_FOUND)
+    message(FATAL_ERROR "Alembic is enabled but cannot be found")
+  endif()
+  get_filename_component(real_include_dir ${ALEMBIC_INCLUDE_DIR} REALPATH)
+  get_filename_component(ALEMBIC_ROOT_DIR ${real_include_dir} DIRECTORY)
+
+  add_python_test(
+    alembic_tests
+    ${CMAKE_CURRENT_LIST_DIR}/alembic_tests.py
+    --blender "$<TARGET_FILE:blender>"
+    --testdir "${TEST_SRC_DIR}/alembic"
+    --alembic-root "${ALEMBIC_ROOT_DIR}"
+  )
+
+  add_test(
+    NAME script_alembic_import
+    COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+    --python ${CMAKE_CURRENT_LIST_DIR}/bl_alembic_import_test.py
+    --
+    --testdir "${TEST_SRC_DIR}/alembic"
+    --with-legacy-depsgraph=${WITH_LEGACY_DEPSGRAPH}
+  )
 endif()
 
 if(WITH_CODEC_FFMPEG)
-	add_python_test(
-		ffmpeg
-		${CMAKE_CURRENT_LIST_DIR}/ffmpeg_tests.py
-		--blender "$<TARGET_FILE:blender>"
-		--testdir "${TEST_DATA_SRC_DIR}/ffmpeg"
-	)
+  add_python_test(
+    ffmpeg
+    ${CMAKE_CURRENT_LIST_DIR}/ffmpeg_tests.py
+    --blender "$<TARGET_FILE:blender>"
+    --testdir "${TEST_DATA_SRC_DIR}/ffmpeg"
+  )
 endif()
 
 add_subdirectory(collada)
diff --git a/tests/python/collada/CMakeLists.txt b/tests/python/collada/CMakeLists.txt
index 66d72611b6311cf4d1f0a8492ce88a9a38e6fdcf..13d2b4fd9ffdb4a45f0ca97ac26e43e4c73d5d7e 100644
--- a/tests/python/collada/CMakeLists.txt
+++ b/tests/python/collada/CMakeLists.txt
@@ -29,19 +29,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
 # ugh, any better way to do this on testing only?
 execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
 
-#~	if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
-#~		message(FATAL_ERROR "CMake test directory not found!")
-#~	endif()
+#~  if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
+#~      message(FATAL_ERROR "CMake test directory not found!")
+#~  endif()
 
 # all calls to blender use this
 if(APPLE)
-	if(${CMAKE_GENERATOR} MATCHES "Xcode")
-		set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
-	else()
-		set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
-	endif()
+  if(${CMAKE_GENERATOR} MATCHES "Xcode")
+    set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup)
+  else()
+    set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
+  endif()
 else()
-	set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
+  set(TEST_BLENDER_EXE_PARAMS --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
 endif()
 
 # for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
@@ -51,12 +51,12 @@ endif()
 # ------------------------------------------------------------------------------
 # GENERAL PYTHON CORRECTNESS TESTS
 macro (COLLADA_TEST module test_name blend_file)
-	add_test(
-		NAME collada_${module}_${test_name}
-		COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS} ${TEST_SRC_DIR}/collada/${module}/${blend_file}
-		--python ${CMAKE_CURRENT_LIST_DIR}/${module}/test_${module}_${test_name}.py --
-		--testdir ${TEST_SRC_DIR}/collada/${module}
-	)
+  add_test(
+    NAME collada_${module}_${test_name}
+    COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS} ${TEST_SRC_DIR}/collada/${module}/${blend_file}
+    --python ${CMAKE_CURRENT_LIST_DIR}/${module}/test_${module}_${test_name}.py --
+    --testdir ${TEST_SRC_DIR}/collada/${module}
+  )
 endmacro()
 
 # Tests are disabled because they only work on Windows
diff --git a/tests/python/view_layer/CMakeLists.txt b/tests/python/view_layer/CMakeLists.txt
index 54eb29a74545df9e59977348aa721c54e26ad07c..68c89fb99116e46669a404dabe939fd674f7f904 100644
--- a/tests/python/view_layer/CMakeLists.txt
+++ b/tests/python/view_layer/CMakeLists.txt
@@ -25,19 +25,19 @@ set(TEST_OUT_DIR ${CMAKE_BINARY_DIR}/tests)
 # ugh, any better way to do this on testing only?
 execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
 
-#~	if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
-#~		message(FATAL_ERROR "CMake test directory not found!")
-#~	endif()
+#~  if(NOT IS_DIRECTORY ${TEST_SRC_DIR})
+#~      message(FATAL_ERROR "CMake test directory not found!")
+#~  endif()
 
 # all calls to blender use this
 if(APPLE)
-	if(${CMAKE_GENERATOR} MATCHES "Xcode")
-		set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/Debug/blender.app/Contents/MacOS/blender)
-	else()
-		set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender.app/Contents/MacOS/blender)
-	endif()
+  if(${CMAKE_GENERATOR} MATCHES "Xcode")
+    set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/Debug/blender.app/Contents/MacOS/blender)
+  else()
+    set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender.app/Contents/MacOS/blender)
+  endif()
 else()
-	set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender)
+  set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender)
 endif()
 
 # for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
@@ -47,14 +47,14 @@ set(TEST_BLENDER_EXE ${TEST_BLENDER_EXE} --background -noaudio --factory-startup
 # ------------------------------------------------------------------------------
 
 macro(VIEW_LAYER_TEST test_name)
-	# Adds ${CMAKE_CURRENT_LIST_DIR} to sys.path so that the tests can import
-	# things from view_layer_common.py
-	add_test(view_layer_${test_name} ${TEST_BLENDER_EXE}
-		--python-expr "import sys; sys.path.append('${CMAKE_CURRENT_LIST_DIR}')"
-		--python-exit-code 1
-		--python ${CMAKE_CURRENT_LIST_DIR}/test_${test_name}.py --
-		--testdir="${TEST_SRC_DIR}/layers"
-	)
+  # Adds ${CMAKE_CURRENT_LIST_DIR} to sys.path so that the tests can import
+  # things from view_layer_common.py
+  add_test(view_layer_${test_name} ${TEST_BLENDER_EXE}
+    --python-expr "import sys; sys.path.append('${CMAKE_CURRENT_LIST_DIR}')"
+    --python-exit-code 1
+    --python ${CMAKE_CURRENT_LIST_DIR}/test_${test_name}.py --
+    --testdir="${TEST_SRC_DIR}/layers"
+  )
 endmacro()
 
 VIEW_LAYER_TEST(active_collection)