forked from bartvdbraak/blender
Freestyle: Use precompiled headers with MSVC.
This brings down the build time for freestyle with MSVC from a minute to 10-20 seconds. vs2019 bf_freestyle debug before: 60464 ms after: 11028 ms vs2019 bf_freestyle release before: 56984 ms after: 20526 ms Differential Revision: https://developer.blender.org/D2606 Reviewed By: brecht , sergey
This commit is contained in:
parent
8b2b79c210
commit
9c76b2c3b6
@ -1220,3 +1220,11 @@ macro(WINDOWS_SIGN_TARGET target)
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
MACRO(blender_precompile_headers target cpp header)
|
||||
if (MSVC AND NOT MSVC_CLANG)
|
||||
target_sources(${target} PRIVATE ${cpp} ${header})
|
||||
set_target_properties(${target} PROPERTIES COMPILE_FLAGS "/Yu${header} /FI${header}")
|
||||
set_source_files_properties(${cpp} PROPERTIES COMPILE_FLAGS "/Yc${header}")
|
||||
endif()
|
||||
ENDMACRO()
|
||||
|
@ -586,3 +586,4 @@ if(WIN32)
|
||||
endif()
|
||||
|
||||
blender_add_lib(bf_freestyle "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||
blender_precompile_headers(bf_freestyle FRS_precomp.cpp FRS_precomp.h)
|
||||
|
1
source/blender/freestyle/FRS_precomp.cpp
Normal file
1
source/blender/freestyle/FRS_precomp.cpp
Normal file
@ -0,0 +1 @@
|
||||
#include "FRS_precomp.h"
|
46
source/blender/freestyle/FRS_precomp.h
Normal file
46
source/blender/freestyle/FRS_precomp.h
Normal file
@ -0,0 +1,46 @@
|
||||
#include <Python.h>
|
||||
#include <pthread.h>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
#include <math.h>
|
||||
#include <stdbool.h>
|
||||
#include <algorithm>
|
||||
#include <time.h>
|
||||
#include <iterator>
|
||||
#include <memory>
|
||||
#include <set>
|
||||
#include <map>
|
||||
#include <list>
|
||||
#include <deque>
|
||||
#include <sstream>
|
||||
#include <stdarg.h>
|
||||
#include <fstream>
|
||||
#include <iomanip>
|
||||
#include <stack>
|
||||
#include "intern/python/BPy_BBox.h"
|
||||
#include "intern/python/BPy_BinaryPredicate0D.h"
|
||||
#include "intern/python/BPy_BinaryPredicate1D.h"
|
||||
#include "intern/python/BPy_ContextFunctions.h"
|
||||
#include "intern/python/BPy_Convert.h"
|
||||
#include "intern/python/BPy_Freestyle.h"
|
||||
#include "intern/python/BPy_FrsMaterial.h"
|
||||
#include "intern/python/BPy_FrsNoise.h"
|
||||
#include "intern/python/BPy_Id.h"
|
||||
#include "intern/python/BPy_IntegrationType.h"
|
||||
#include "intern/python/BPy_Interface0D.h"
|
||||
#include "intern/python/BPy_Interface1D.h"
|
||||
#include "intern/python/BPy_Iterator.h"
|
||||
#include "intern/python/BPy_MediumType.h"
|
||||
#include "intern/python/BPy_Nature.h"
|
||||
#include "intern/python/BPy_Operators.h"
|
||||
#include "intern/python/BPy_SShape.h"
|
||||
#include "intern/python/BPy_StrokeAttribute.h"
|
||||
#include "intern/python/BPy_StrokeShader.h"
|
||||
#include "intern/python/BPy_UnaryFunction0D.h"
|
||||
#include "intern/python/BPy_UnaryFunction1D.h"
|
||||
#include "intern/python/BPy_UnaryPredicate0D.h"
|
||||
#include "intern/python/BPy_UnaryPredicate1D.h"
|
||||
#include "intern/python/BPy_ViewMap.h"
|
||||
#include "intern/python/BPy_ViewShape.h"
|
||||
#include "intern/python/Director.h"
|
Loading…
Reference in New Issue
Block a user