From 9a627e8881c1b5d8fad9f1a563b5af23716e1b55 Mon Sep 17 00:00:00 2001 From: stijn Date: Tue, 15 Mar 2016 10:22:34 +0100 Subject: [PATCH] windows/msvc: Implement automatic qstr generation using makeqstrdefs. Note this still needs some work: currently all source files are always preprocessed no matter which one actually changed, moreover that happens file by file without any parallellism so builds are painstakingly slow. --- windows/msvc/genhdr.targets | 65 ++++++++++++++++++++++++++++++------- 1 file changed, 53 insertions(+), 12 deletions(-) diff --git a/windows/msvc/genhdr.targets b/windows/msvc/genhdr.targets index 3d9a148bed..a2b4c80964 100644 --- a/windows/msvc/genhdr.targets +++ b/windows/msvc/genhdr.targets @@ -3,33 +3,74 @@ - - + + $(PyBuildDir)genhdr\ $(PyBaseDir)py\ + $(PyBaseDir)unix\qstrdefsport.h + $(DestDir)qstrdefscollected.h + $(DestDir)qstrdefs.generated.h python + + + + - - - $(DestDir)qstrdefs.preprocessed.h - $(PyBaseDir)unix\qstrdefsport.h - $(DestDir)qstrdefs.generated.h - $(DestFile).tmp - + + + + $([System.String]::new('%(FullPath)').Replace('$(PyBaseDir)', '$(DestDir)')) + + + $([System.IO.Path]::ChangeExtension('%(Qstr)', '.qstr')) + $([System.IO.Path]::ChangeExtension('%(Qstr)', '.pp')) + $([System.IO.Path]::GetDirectoryName('%(Qstr)')) + $([System.String]::new('%(FileName)').Contains('qstrdefs')) + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(DestFile).tmp + + +