Microsoft Build Accelerator
Перейти к файлу
Nora Huang 0fa99c3a6b Merged PR 587278: Update nodejs version for rush test.
Update nodejs version for rush test.

Related work items: #1794623
2020-12-01 20:42:06 +00:00
.config Merged PR 573794: Updated reviewerrecommender.yaml 2020-09-10 23:38:30 +00:00
.vscode Merged PR 544336: [linux-sandbox] Pass and parse FileAccessManifest 2020-04-02 20:03:13 +00:00
Documentation Merged PR 584396: Update documentation: inconsistencies, dead links and some formatting 2020-11-16 23:44:26 +00:00
Examples Merged PR 558490: Remove implicit project reference semantics field on module configuration files 2020-06-15 18:46:10 +00:00
Private Merged PR 586105: Add IcM client to the monitor 2020-11-24 00:22:26 +00:00
Public Merged PR 587278: Update nodejs version for rush test. 2020-12-01 20:42:06 +00:00
Shared New LKG 0.1.0-20201125.5 2020-11-28 05:59:54 +00:00
cg Merged PR 586105: Add IcM client to the monitor 2020-11-24 00:22:26 +00:00
third_party
.editorconfig Merged PR 555506: Switch to Roslyn 3.5.0 2020-06-01 21:40:43 +00:00
.gitattributes
.gitignore Merged PR 543794: Initial sandbox implementation for Linux 2020-04-02 02:48:45 +00:00
BuildCache.cmd
BuildCacheDefault.json
BuildCacheDefaultNetCore.json
BuildCacheOverride.json
CODEOWNERS
CODE_OF_CONDUCT.md
CONTRIBUTING.md
CreatePr.cmd
LICENSE
README.md
RunCheckInTests-Test.cmd
RunCheckInTests.cmd Merged PR 558613: Remove symlink definition files and lazy symlink materialization 2020-06-18 15:39:45 +00:00
RunCheckInTestsWithPAT.ps1
SECURITY.md
SlimBuildForMacTests.cmd
buddy.cmd Merged PR 538749: Add a preliminary Rush frontend to BuildXL 2020-03-12 06:24:11 +00:00
bxl.cmd
bxl.sh [linux] changes needed for selfhost build 2020-04-21 18:21:00 +00:00
bxlanalyzer.cmd
clean.bat
config.dsc Merged PR 587278: Update nodejs version for rush test. 2020-12-01 20:42:06 +00:00
config.microsoftInternal.dsc Merged PR 586105: Add IcM client to the monitor 2020-11-24 00:22:26 +00:00
config.nuget.aspNetCore.dsc Merged PR 585237: Add support for NET 5 2020-11-19 00:25:17 +00:00
config.nuget.dotnetcore.dsc Merged PR 585237: Add support for NET 5 2020-11-19 00:25:17 +00:00
config.nuget.grpc.dsc Merged PR 579760: Perform Async IO when copying files in GrpcCopyClient 2020-10-19 19:09:41 +00:00
config.nuget.vssdk.dsc Merged PR 572965: Remove unused nugets 2020-09-05 15:30:31 +00:00
domino.cmd
drop.cmd Merged PR 565168: Update drop.cmd bootstrap script 2020-07-21 21:16:01 +00:00
dropout.cmd Merged PR 578968: Implement deployment proxy 2020-10-13 22:43:04 +00:00
macos.mounts.dsc
yarn.lock Merged PR 583139: Add npm package that wraps bxl and bxlanalayzer from nuget 2020-11-04 17:09:16 +00:00

README.md

Microsoft Build Accelerator

BuildXL Icon

Introduction

Build Accelerator, BuildXL for short, is a build engine originally developed for large internal teams at Microsoft, and owned by the Tools for Software Engineers team, part of the Microsoft One Engineering System internal engineering group. Internally at Microsoft, BuildXL runs 30,000+ builds per day on monorepo codebases up to a half-terabyte in size with a half-million process executions per build, using distribution to thousands of data center machines and petabytes of source code, package, and build output caching. Thousands of developers use BuildXL on their desktops for faster builds even on mega-sized codebases.

BuildXL accelerates multiple build languages, including:

  • MSBuild (using new features under development in MSBuild 16 which will ship in future versions of Visual Studio 2019 and the .NET Core SDK)
  • CMake (under development)
  • Its own internal scripting language, DScript, an experimental TypeScript based format used as an intermediate language by a small number of teams inside Microsoft

BuildXL has a command-line interface. There are currently no plans to integrate it into Visual Studio. The project is open source in the spirit of transparency of our engineering system. You may find our technology useful if you face similar issues of scale. Note that BuildXL is not intended as a replacement for MSBuild or to indicate any future direction of build languages from Microsoft.

Documentation

The BuildXL documentation main page is here.

Examples and Demos

See the Examples/ folder for basic project examples. See the Demos page for information about various technical demos like using the process sandboxing code.

Building the Code

Build Status - Azure DevOps Pipelines

Build status

Command Line Build and Test

See the Developer Guide for instructions on compiling BuildXL.

Contributing

See CONTRIBUTING.