From 5db8da81055be7fb89b4d824ce17e61ffeb46060 Mon Sep 17 00:00:00 2001 From: Tamito Kajiyama Date: Thu, 17 Apr 2014 12:01:10 +0900 Subject: Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 1). The issue was caused by including both Python.h and BLI_math.h. Since the macro definition in Python.h was unconditional, it was necessary to include it first and then BLI_math.h. Addressing the issue turned out to affect many Freestyle source files. There were several other coding flaws that complicated the situation: 1. intern/system/FreestyleConfig.h was abused just to include BLI_math.h which was in fact unnecessary in FreestyleConfig.h. While addressing this, inclusion of both math.h and BLI_math.h had to be duly dealt with to avoid a compiler error about round(). 2. #include was not properly put in the extern "C" { ... } construct. 3. intern/view_map/Interface0D.h and intern/python/Director.h, both of which included Python.h, were included from within Freestyle header files that were almost or completely independent of Python. These non-Python header files were used everywhere in the Freestyle code base, causing many cases of the reported macro redefinitions. 4. The Director.h file was also declaring 'using namespace Freestyle', which was causing another scope issue in several Freestyle header files. This commit is intended to address the first problem above. Subsequent commits will deal with the other three. --- source/blender/freestyle/intern/geometry/matrix_util.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source/blender/freestyle/intern/geometry') diff --git a/source/blender/freestyle/intern/geometry/matrix_util.cpp b/source/blender/freestyle/intern/geometry/matrix_util.cpp index 7905dda5843..5e585497516 100644 --- a/source/blender/freestyle/intern/geometry/matrix_util.cpp +++ b/source/blender/freestyle/intern/geometry/matrix_util.cpp @@ -36,10 +36,10 @@ * \author Bruno Levy */ -#include - #include "matrix_util.h" +#include "BLI_math.h" + namespace Freestyle { namespace OGF { -- cgit v1.2.3