Skip to content

Commit 33a6f43

Browse files
Merge branch 'master' into linux_m2
Conflicts resolved in the following file: .gitignore lib/Common/Exceptions/ReportError.h lib/Common/Memory/HeapBlock.cpp lib/Common/Memory/HeapBlock.h lib/Common/Memory/HeapBucket.cpp lib/Common/Memory/HeapBucket.h lib/Common/Memory/HeapBucket.inl lib/Common/Memory/HeapInfo.cpp lib/Common/Memory/HeapInfo.h lib/Common/Memory/PageAllocator.cpp lib/Common/Memory/PageAllocator.h lib/Common/Memory/Recycler.cpp lib/Common/Memory/Recycler.h lib/Common/Memory/Recycler.inl lib/Common/Memory/RecyclerSweep.h lib/Common/Memory/SmallBlockDeclarations.inl lib/Common/Memory/SmallFinalizableHeapBlock.cpp lib/Common/Memory/SmallFinalizableHeapBucket.cpp lib/Common/Memory/SmallHeapBlockAllocator.h lib/Common/Memory/SmallLeafHeapBucket.cpp lib/Common/Memory/SmallNormalHeapBucket.cpp lib/Runtime/Base/FunctionBody.cpp lib/Runtime/Library/JavascriptSimdBool16x8.h lib/Runtime/Library/JavascriptSimdBool32x4.h lib/Runtime/Library/JavascriptSimdBool8x16.h lib/Runtime/Library/JavascriptSimdFloat32x4.h lib/Runtime/Library/JavascriptSimdInt16x8.h lib/Runtime/Library/JavascriptSimdInt32x4.h lib/Runtime/Library/JavascriptSimdInt8x16.h lib/Runtime/Library/JavascriptSimdUint16x8.h lib/Runtime/Library/JavascriptSimdUint32x4.h lib/Runtime/Library/JavascriptSimdUint8x16.h
2 parents f1f7ccc + f70638a commit 33a6f43

272 files changed

Lines changed: 15517 additions & 12853 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
*.sdf
33
*.suo
44
*.opensdf
5+
*.VC.db
56
*.opendb
67
*.user
78
*.i
@@ -18,6 +19,9 @@ buildchk.*
1819
buildfre.*
1920
Build/swum-cache.txt
2021
BuildLinux/
22+
23+
ComputedEnvironment.cmd
24+
packages/
2125
*.tlog/
2226
.*.swp
2327
sd.ini
@@ -31,6 +35,9 @@ profile.dpl.*
3135
Build/Chakra.Core.VC.opendb
3236
test/benchmarks/*.txt
3337
test/benchmarks/*.dpl
38+
*.nupkg
39+
40+
# CMake Files
3441
CMakeCache.txt
3542
CMakeFiles
3643
CMakeScripts
@@ -46,3 +53,4 @@ install_manifest.txt
4653
*.gch
4754
Makefile
4855
pal/src/config.h
56+
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<Import Project="Common.Build.ProjectConfiguration.props" />
4+
<Import Project="MicroBuildv2.Build.ProjectConfiguration.props" />
45
</Project>
5-

Build/Chakra.Build.props

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,7 @@
3030
4456; <!-- declaration of '' hides previous local declaration -->
3131
4457; <!-- declaration of '' hides function parameter -->
3232
4458; <!-- declaration of '' hides class member -->
33-
4091; <!-- '': ignore on left of 'type' when no variable is declared -->
3433
4838; <!-- conversion from 'unsigned int' to 'int requires a narrowing conversion -->
35-
4499; <!-- explicit specialization cannot have a storage class (ignored) -->
36-
4463; <!-- overflow; assigning 1 to bit-field that can only hold values from -1 to 0 -->
37-
4311; <!-- 'type cast': pointer truncation from '' to '' -->
3834
4312; <!-- 'type cast': conversion from '' to '' of greater size -->
3935
</DisableSpecificWarnings>
4036
<!-- Use the debug CRT in debug build -->

Build/Common.Build.Default.props

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,15 @@
4040
<CharacterSet>Unicode</CharacterSet>
4141
</PropertyGroup>
4242

43-
<!-- Alternate platform names-->
43+
<!-- Change configuration name to output to a different folder -->
44+
<!-- POGO instrumentation -->
45+
<PropertyGroup>
46+
<IsPogoBuild />
47+
<IsPogoBuild Condition="('$(POGO_TYPE)'=='PGO' OR '$(POGO_TYPE)'=='PGI')">true</IsPogoBuild>
48+
<OutDirName Condition="'$(IsPogoBuild)'=='true'">$(Configuration.ToLower())_pogo</OutDirName>
49+
</PropertyGroup>
50+
51+
<!-- Alternate platform names -->
4452
<PropertyGroup>
4553
<!-- PlatformPathName is used in OutDir/IntDir name-->
4654
<PlatformPathName>$(Platform)</PlatformPathName>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.props" Condition="Exists('$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.props')" />
4+
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
5+
<PropertyGroup>
6+
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
7+
</PropertyGroup>
8+
<Error Condition="!Exists('$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.props'))" />
9+
<Error Condition="!Exists('$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.targets'))" />
10+
</Target>
11+
<Import Project="$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.targets" Condition="Exists('$(SolutionDir)packages\MicroBuild.Core.0.2.0\build\MicroBuild.Core.targets')" />
12+
</Project>

Build/Microsoft.ChakraCore.nuspec

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns="http://schemas.microsoft.com/packaging/2011/10/nuspec.xsd">
3+
<metadata>
4+
<id>Microsoft.ChakraCore</id>
5+
<version>1.2</version>
6+
<authors>Chakra Team</authors>
7+
<owners>Chakra Team</owners>
8+
<licenseUrl>https://github.com/Microsoft/ChakraCore/blob/master/LICENSE.txt</licenseUrl>
9+
<projectUrl>https://github.com/Microsoft/ChakraCore</projectUrl>
10+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
11+
<developmentDependency>true</developmentDependency>
12+
<description>ChakraCore is the core part of the Chakra Javascript engine that powers Microsoft Edge.</description>
13+
<!--
14+
<releaseNotes>**** TODO: need link</releaseNotes>
15+
-->
16+
<copyright>Copyright (C) 2016 Microsoft</copyright>
17+
<language>en-US</language>
18+
<tags>Chakra,ChakraCore</tags>
19+
</metadata>
20+
<files>
21+
<file src="..\x86_release\ChakraCore.dll" target="x86\ChakraCore.dll" />
22+
<file src="..\x86_release\ChakraCore.pdb" target="x86\ChakraCore.pdb" />
23+
<file src="..\x86_release\ch.exe" target="x86\ch.exe" />
24+
<file src="..\x86_release\ch.pdb" target="x86\ch.pdb" />
25+
<file src="..\x64_release\ChakraCore.dll" target="x64\ChakraCore.dll" />
26+
<file src="..\x64_release\ChakraCore.pdb" target="x64\ChakraCore.pdb" />
27+
<file src="..\x64_release\ch.exe" target="x64\ch.exe" />
28+
<file src="..\x64_release\ch.pdb" target="x64\ch.pdb" />
29+
</files>
30+
</package>
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$(MSBuildThisFileDirectory)\MicroBuild.Plugin.props" Condition="'$(MicroBuildSentinelFile)' == ''" />
4+
<Import Project="$(MicroBuildPluginDirectory)\MicroBuild.Plugins.*\**\build\MicroBuild.Plugins.*.props" Condition="'$(MicroBuildPluginDirectory)' != ''" />
5+
</Project>
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$(MSBuildThisFileDirectory)\MicroBuild.Plugin.props" Condition="'$(MicroBuildSentinelFile)' == ''" />
4+
<Import Project="$(MicroBuildPluginDirectory)\MicroBuild.Plugins.*\**\build\MicroBuild.Plugins.*.targets" Condition="'$(MicroBuildPluginDirectory)' != ''" />
5+
</Project>
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup>
4+
<!-- MicroBuild plugins can be installed in any parent directory up the tree from the project that is building.
5+
The use of a sentinel file (which will be installed automatically due to package dependencies from any plugin)
6+
will help us locate the plugin packages directory while being constrained to using MSBuild's intrinsic functions,
7+
since we want the imports to occur at evaluation time instead of when a specific target is executing.
8+
9+
Note: All MicroBuild plugins must be installed to the same directory (under the same packages folder). If plugins
10+
are installed to different directories, the plugins which are in the directories closest to the executing project
11+
up the hierarchy will be discovered, and the ones higher up the tree will be ignored.
12+
-->
13+
<MicroBuildSentinelFile>packages\MicroBuild.Core.Sentinel.1.0.0\sentinel.txt</MicroBuildSentinelFile>
14+
<MicroBuildSentinelFileV3>MicroBuild.Core.Sentinel\1.0.0\sentinel.txt</MicroBuildSentinelFileV3>
15+
16+
<MicroBuildPluginDirectory>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), $(MicroBuildSentinelFile)))</MicroBuildPluginDirectory>
17+
<MicroBuildPluginDirectory Condition="'$(MicroBuildPluginDirectory)' != ''">$(MicroBuildPluginDirectory)\packages</MicroBuildPluginDirectory>
18+
19+
<!-- Some people might want to put the plugin packages directly in their Nuget v3 global cache. This doesn't happen by default,
20+
but we will allow for it here. We don't support nuget.config's globalPackagesFolder setting here because we don't have a good
21+
way to load/parse that file with MSBuild intrinsics. We can check the other two mechanisms though, which are the %NUGET_PACKAGES%
22+
environment variable and %USERPROFILE%\.nuget\packages -->
23+
<MicroBuildPluginDirectory Condition="'$(MicroBuildPluginDirectory)' == '' and '$(NUGET_PACKAGES)' != '' and Exists('$(NUGET_PACKAGES)\$(MicroBuildSentinelFileV3)')">$(NUGET_PACKAGES)</MicroBuildPluginDirectory>
24+
<MicroBuildPluginDirectory Condition="'$(MicroBuildPluginDirectory)' == '' and '$(USERPROFILE)' != '' and Exists('$(USERPROFILE)\.nuget\packages\$(MicroBuildSentinelFileV3)')">$(USERPROFILE)\.nuget\packages</MicroBuildPluginDirectory>
25+
26+
<!-- Allow for the ability to override the plugin directory, for example in automated builds -->
27+
<MicroBuildPluginDirectory Condition="'$(MicroBuildOverridePluginDirectory)' != ''">$(MicroBuildOverridePluginDirectory)</MicroBuildPluginDirectory>
28+
</PropertyGroup>
29+
</Project>

Build/scripts/compose_build.ps1

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
#-------------------------------------------------------------------------------------------------------
2+
# Copyright (C) Microsoft. All rights reserved.
3+
# Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
4+
#-------------------------------------------------------------------------------------------------------
5+
6+
# Compose Build script
7+
#
8+
# Aggregate metadata about a build and produce a file with useful information about the build
9+
# for tools to consume and get a quick overview of the status of a completed build.
10+
11+
param (
12+
[Parameter(Mandatory=$True)]
13+
[string]$rootPath
14+
)
15+
16+
#
17+
# Clean up the sentinel which previously marked this build as incomplete.
18+
#
19+
20+
$buildIncompleteFile = Join-Path $rootPath "build.incomplete"
21+
if (Test-Path $buildIncompleteFile) {
22+
Remove-Item -Path $buildIncompleteFile -Force
23+
}
24+
25+
#
26+
# Aggregate build metadata and produce build.json
27+
#
28+
29+
$outputJsonFile = Join-Path -Path $rootPath -ChildPath "build.json"
30+
$buildInfo = New-Object System.Object
31+
32+
$changeJson = (Get-ChildItem -Path $rootPath "change.json" -Recurse)[0] | % { $_.FullName }
33+
$changeInfo = (Get-Content $changeJson) -join "`n" | ConvertFrom-Json
34+
35+
# Determine the overall build status. Mark the build as "passed" until "failed" is encountered.
36+
$overallBuildStatus = "passed"
37+
38+
$files = Get-ChildItem -Path $rootPath "*.json" -Recurse `
39+
| ? { ($_.Name -ne "change.json") -and ($_.Name -ne "build.json") } `
40+
| % { $_.FullName }
41+
$builds = New-Object System.Collections.ArrayList
42+
foreach ($file in $files) {
43+
$json = (Get-Content $file) -join "`n" | ConvertFrom-Json
44+
$_ = $builds.Add($json)
45+
46+
if ($json.status -eq "failed") {
47+
$overallBuildStatus = "failed"
48+
}
49+
}
50+
51+
$buildInfo | Add-Member -type NoteProperty -name status -value $overallBuildStatus
52+
$buildInfo | Add-Member -type NoteProperty -name change -value $changeInfo
53+
$buildInfo | Add-Member -type NoteProperty -name builds -value $builds
54+
55+
$buildInfo | ConvertTo-Json | Write-Output
56+
$buildInfo | ConvertTo-Json | Out-File $outputJsonFile -Encoding ascii

0 commit comments

Comments
 (0)