浏览代码

Fixed a bug in the build process that caused ReleaseBinaries package to be populated with redundant empty directories

ArnoldZokas 15 年之前
父节点
当前提交
649eb54a99
共有 4 个文件被更改,包括 15 次插入3 次删除
  1. 8 3
      build/Common.targets
  2. 3 0
      build/GenerateCompletePackage.bat
  3. 3 0
      build/GenerateReleasePackage.bat
  4. 1 0
      build/build.csproj

+ 8 - 3
build/Common.targets

@@ -34,14 +34,19 @@
 	</Target>
 	
 	<!--## Package Generation ##-->
+	<Target Name="_CleanOutputDirectory">
+		<ItemGroup><DirectoriesToDelete Include="$([System.IO.Directory]::GetDirectories('$(BuildOutputDirectory)'))" /></ItemGroup>
+		<RemoveDir Directories="@(DirectoriesToDelete)" ContinueOnError="true" />
+		
+		<ItemGroup><FilesToDelete Include="$(BuildOutputDirectory)\**\*.*" /></ItemGroup>
+		<Delete Files="@(FilesToDelete)" />
+	</Target>
+	
 	<Target Name="_PreparePackageComponent">
 		<Copy SourceFiles="@(DynamicPackageItem)" DestinationFolder="$(BuildOutputDirectory)\%(DynamicPackageItem.TargetDirectory)\%(DynamicPackageItem.RecursiveDir)" />
 	</Target>
 
 	<Target Name="_GeneratePackage">
-		<ItemGroup><ExistingArchives Include="$(BuildOutputDirectory)\*.zip" /></ItemGroup>
-		<Delete Files="@(ExistingArchives)" />
-
 		<Copy SourceFiles="@(StaticPackageItem)" DestinationFolder="$(BuildOutputDirectory)\%(StaticPackageItem.TargetDirectory)\%(StaticPackageItem.RecursiveDir)" />
 		<Exec Command="&quot;$(ZipExePath)&quot; a -tzip $(PackageName) * -r" WorkingDirectory="$(BuildOutputDirectory)" />
 

+ 3 - 0
build/GenerateCompletePackage.bat

@@ -1,4 +1,7 @@
 @ECHO OFF
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\msbuild build.csproj /m /t:PrepareOutputDirectory
+IF ERRORLEVEL 1 GOTO END
+
 %WINDIR%\Microsoft.NET\Framework\v4.0.30319\msbuild build.csproj /m /t:Build;PreparePackageComponent /p:BuildConfiguration=Debug /p:Platform="Any CPU"
 IF ERRORLEVEL 1 GOTO END
 

+ 3 - 0
build/GenerateReleasePackage.bat

@@ -1,4 +1,7 @@
 @ECHO OFF
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\msbuild build.csproj /m /t:PrepareOutputDirectory
+IF ERRORLEVEL 1 GOTO END
+
 %WINDIR%\Microsoft.NET\Framework\v4.0.30319\msbuild build.csproj /m /t:Build;PreparePackageComponent /p:BuildConfiguration=Release /p:Platform="Any CPU"
 IF ERRORLEVEL 1 GOTO END
 

+ 1 - 0
build/build.csproj

@@ -95,6 +95,7 @@
 
 	<!-- targets -->
 	<Target Name="Build" DependsOnTargets="_Compile;_Test" />
+	<Target Name="PrepareOutputDirectory" DependsOnTargets="_CleanOutputDirectory" />
 	<Target Name="PreparePackageComponent" DependsOnTargets="_PreparePackageComponent" />
 	<Target Name="GeneratePackage" DependsOnTargets="_GeneratePackage" />
 	<Target Name="RunBenchmarks" DependsOnTargets="_RunBenchmarks" />