]> granicus.if.org Git - yasm/commitdiff
Remove some causes of unnecessary rebuilds on Windows (VC10 only)
authorBrian Gladman <brg@gladman.plus.com>
Tue, 27 Jul 2010 18:20:22 +0000 (18:20 -0000)
committerBrian Gladman <brg@gladman.plus.com>
Tue, 27 Jul 2010 18:20:22 +0000 (18:20 -0000)
svn path=/trunk/yasm/; revision=2342

Mkfiles/vc10/genperf/genperf.vcxproj
Mkfiles/vc10/genperf/run.bat
Mkfiles/vc10/libyasm/libyasm.vcxproj
Mkfiles/vc10/libyasm/libyasm.vcxproj.filters
Mkfiles/vc10/out_copy_rename.bat [new file with mode: 0644]
Mkfiles/vc10/vsyasm.vcxproj

index 3ca1fb4554e12ff88e5f6f4a388d4a345b303179..b94d5a2be609d293159a88902f4590be672a31fc 100644 (file)
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
+    <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</PreBuildEventUseInBuild>\r
+    <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</PreBuildEventUseInBuild>\r
+    <PreLinkEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</PreLinkEventUseInBuild>\r
+    <PreLinkEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</PreLinkEventUseInBuild>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
index 9c22b57e7513ed4a4fa2e7826d30567ca6073059..5827138bd0895baa6ec04f4a05b963092796410a 100644 (file)
@@ -16,7 +16,13 @@ call %_python_% modules\arch\x86\gen_x86_insn.py
 \r
 :therest\r
 @echo on\r
-%1 x86insn_nasm.gperf x86insn_nasm.c\r
-%1 x86insn_gas.gperf x86insn_gas.c\r
-%1 modules\arch\x86\x86cpu.gperf x86cpu.c\r
-%1 modules\arch\x86\x86regtmod.gperf x86regtmod.c\r
+call :update %1 x86insn_nasm.gperf x86insn_nasm.c\r
+call :update %1 x86insn_gas.gperf x86insn_gas.c\r
+call :update %1 modules\arch\x86\x86cpu.gperf x86cpu.c\r
+call :update %1 modules\arch\x86\x86regtmod.gperf x86regtmod.c\r
+goto :eof\r
+\r
+:update\r
+%1 %2 tf\r
+call mkfiles\vc10\out_copy_rename tf .\ %3\r
+del tf\r
index a480d2a6e3fddeab42cdfee32c01a16140051836..af67e44dc3a46183e7a1842f224de1c141a9191c 100644 (file)
     <ClInclude Include="..\..\..\libyasm\file.h" />\r
     <ClInclude Include="..\..\..\libyasm\arch.h" />\r
     <ClInclude Include="..\..\..\libyasm\assocdat.h" />\r
-    <ClInclude Include="..\..\..\libyasm\bc-int.h" />\r
     <ClInclude Include="..\..\..\libyasm\bitvect.h" />\r
     <ClInclude Include="..\..\..\libyasm\bytecode.h" />\r
     <ClInclude Include="..\..\..\libyasm\compat-queue.h" />\r
-    <ClInclude Include="config.h" />\r
     <ClInclude Include="..\..\..\libyasm\coretype.h" />\r
     <ClInclude Include="..\..\..\libyasm\dbgfmt.h" />\r
     <ClInclude Include="..\..\..\libyasm\errwarn.h" />\r
-    <ClInclude Include="..\..\..\libyasm\expr-int.h" />\r
     <ClInclude Include="..\..\..\libyasm\expr.h" />\r
     <ClInclude Include="..\..\..\libyasm\floatnum.h" />\r
     <ClInclude Include="..\..\..\libyasm\hamt.h" />\r
     <ClInclude Include="..\..\..\libyasm\preproc.h" />\r
     <ClInclude Include="..\..\..\libyasm\section.h" />\r
     <ClInclude Include="..\..\..\libyasm\symrec.h" />\r
-    <ClInclude Include="..\..\..\libyasm\util.h" />\r
     <ClInclude Include="..\..\..\libyasm\valparam.h" />\r
     <ClInclude Include="..\..\..\libyasm\value.h" />\r
   </ItemGroup>\r
index aaad93d7cc54de1abbe336348e09e98f1e99398a..6385583dce7c931b2e61bb1b8110ab52fbf3707e 100644 (file)
     <ClInclude Include="..\..\..\libyasm\assocdat.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
-    <ClInclude Include="..\..\..\libyasm\bc-int.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\bitvect.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\errwarn.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
-    <ClInclude Include="..\..\..\libyasm\expr-int.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\expr.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\symrec.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
-    <ClInclude Include="..\..\..\libyasm\util.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\valparam.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
     <ClInclude Include="..\..\..\libyasm\value.h">\r
       <Filter>Header Files</Filter>\r
     </ClInclude>\r
-    <ClInclude Include="config.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <None Include="..\..\..\libyasm\module.in" />\r
diff --git a/Mkfiles/vc10/out_copy_rename.bat b/Mkfiles/vc10/out_copy_rename.bat
new file mode 100644 (file)
index 0000000..349ee33
--- /dev/null
@@ -0,0 +1,42 @@
+@echo off\r
+if not exist %1 goto nofile\r
+if exist %2 goto copy\r
+\r
+echo creating directory %2\r
+md %2 > nul\r
+\r
+:copy\r
+set str=%2\r
+for /f "useback tokens=*" %%a in ('%str%') do set str=%%~a\r
+set str=%str:~-1%\r
+if %str% == "\" goto hasbackslash\r
+\r
+if not exist %2\%3 goto cpy\r
+fc %1 %2\%3 > nul && if not %errorlevel 1 goto exit\r
+echo overwriting %2\%3 with %1\r
+copy %1 %2\%3 > nul\r
+goto exit\r
+\r
+:cpy\r
+echo copying %1 to %2\%3\r
+copy %1 %2\%3 > nul\r
+goto exit\r
+\r
+:hasbackslash\r
+if not exist %2%3 goto cpy2 \r
+fc %1 %2%3 > nul && if not %errorlevel 1 goto exit\r
+echo overwriting %2%3 with %1\r
+copy %1 %2%3 > nul\r
+goto exit\r
+\r
+:cpy2\r
+echo copying %1 to %2%3\r
+copy %1 %2%3 > nul\r
+goto exit\r
+\r
+:nofile\r
+echo %1 not found\r
+\r
+:exit\r
+\r
+\r
index 7decc5bc4cdb73d85a6cd2495f7fd5441718feca..0c6e22a2b7eea6e3842610c6c750552be348cabc 100644 (file)
     <ClCompile Include="..\..\frontends\vsyasm\vsyasm.c" />\r
     <ClCompile Include="..\..\frontends\yasm\yasm-options.c" />\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\..\frontends\vsyasm\yasm-options.h" />\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="libyasm\libyasm.vcxproj">\r
       <Project>{29fe7874-1256-4ad6-b889-68e399dc9608}</Project>\r
       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
     </ProjectReference>\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <ClInclude Include="..\..\frontends\yasm\yasm-options.h" />\r
+  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r