เบเบฒเบ™เบ›เปˆเบญเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ›เบฐเบเบญเบš Bazel 1.0

เปเบ™เบฐเบ™เบณ เบ›เปˆเบญเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ›เบฐเบเบญเบšเป€เบ›เบตเบ” Bazel 1.0, ั€ะฐะทะฒะธะฒะฐะตะผะพะณะพ ะธะฝะถะตะฝะตั€ะฐะผะธ ะธะท Google ะธ ะธัะฟะพะปัŒะทัƒะตะผะพะณะพ ะดะปั ัะฑะพั€ะบะธ ะฑะพะปัŒัˆะธะฝัั‚ะฒะฐ ะฒะฝัƒั‚ั€ะตะฝะฝะธั… ะฟั€ะพะตะบั‚ะพะฒ ะดะฐะฝะฝะพะน ะบะพะผะฟะฐะฝะธะธ. ะ’ั‹ะฟัƒัะบ 1.0 ะพะทะฝะฐะผะตะฝะพะฒะฐะป ะฟะตั€ะตั…ะพะด ะบ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธัŽ ัะตะผะฐะฝั‚ะธั‡ะตัะบะพะณะพ ะฒะตั€ัะธะพะฝะธั€ะพะฒะฐะฝะธั ั€ะตะปะธะทะพะฒ ะธ ั‚ะฐะบะถะต ะฟั€ะธะผะตั‡ะฐั‚ะตะปะตะฝ ะฒะฝะตัะตะฝะธะตะผ ะฑะพะปัŒัˆะพะณะพ ั‡ะธัะปะฐ ะธะทะผะตะฝะตะฝะธะน, ะฝะฐั€ัƒัˆะฐัŽั‰ะธั… ะพะฑั€ะฐั‚ะฝัƒัŽ ัะพะฒะผะตัั‚ะธะผะพัั‚ัŒ. ะšะพะด ะฟั€ะพะตะบั‚ะฐ เปเบˆเบเบขเบฒเบเป‚เบ”เบ เบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰ Apache 2.0.

Bazel ะพะฑะตัะฟะตั‡ะธะฒะฐะตั‚ ัะฑะพั€ะบัƒ ะฟั€ะพะตะบั‚ะฐ, ะทะฐะฟัƒัะบะฐั ะฝะตะพะฑั…ะพะดะธะผั‹ะต ะบะพะผะฟะธะปัั‚ะพั€ั‹ ะธ ั‚ะตัั‚ั‹. ะกะฑะพั€ะพั‡ะฝะฐั ัะธัั‚ะตะผะฐ ะธะทะฝะฐั‡ะฐะปัŒะฝะพ ัะฟั€ะพะตะบั‚ะธั€ะพะฒะฐะฝะฐ ะดะปั ะพะฟั‚ะธะผะฐะปัŒะฝะพะน ัะฑะพั€ะบะธ ะฟั€ะพะตะบั‚ะพะฒ Google, ะฒ ั‚ะพะผ ั‡ะธัะปะต ัะฑะพั€ะบะธ ะพั‡ะตะฝัŒ ะฑะพะปัŒัˆะธั… ะฟั€ะพะตะบั‚ะพะฒ ะธ ะฟั€ะพะตะบั‚ะพะฒ, ัะพะดะตั€ะถะฐั‰ะธั… ะบะพะด ะฝะฐ ะฝะตัะบะพะปัŒะบะธั… ัะทั‹ะบะฐั… ะฟั€ะพะณั€ะฐะผะผะธั€ะพะฒะฐะฝะธั, ั‚ั€ะตะฑัƒัŽั‰ะธั… ั€ะฐััˆะธั€ะตะฝะฝะพะณะพ ั‚ะตัั‚ะธั€ะพะฒะฐะฝะธั ะธ ัะพะฑะธั€ะฐะตะผั‹ั… ะดะปั ะฝะตัะบะพะปัŒะบะธั… ะฟะปะฐั‚ั„ะพั€ะผ. ะŸะพะดะดะตั€ะถะธะฒะฐะตั‚ัั ัะฑะพั€ะบะฐ ะธ ั‚ะตัั‚ะธั€ะพะฒะฐะฝะธะต ะบะพะดะฐ ะฝะฐ Java, C++, Objective-C, Python, Rust, Go ะธ ะผะฝะพะณะธั… ะดั€ัƒะณะธั… ัะทั‹ะบะฐั…, ะฐ ั‚ะฐะบะถะต ัะฑะพั€ะบะฐ ะผะพะฑะธะปัŒะฝั‹ั… ะฟั€ะธะปะพะถะตะฝะธะน ะดะปั Android ะธ iOS. ะŸะพะดะดะตั€ะถะธะฒะฐะตั‚ัั ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะต ะตะดะธะฝั‹ั… ัะฑะพั€ะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะดะปั ั€ะฐะทะฝั‹ั… ะฟะปะฐั‚ั„ะพั€ะผ ะธ ะฐั€ั…ะธั‚ะตะบั‚ัƒั€, ะฝะฐะฟั€ะธะผะตั€, ะพะดะธะฝ ั„ะฐะนะป ัะฑะพั€ะบะธ ะฑะตะท ะธะทะผะตะฝะตะฝะธะน ะผะพะถะตั‚ ะฟั€ะธะผะตะฝัั‚ัŒัั ะบะฐะบ ะดะปั ัะตั€ะฒะตั€ะฝะพะน ัะธัั‚ะตะผั‹, ั‚ะฐะบ ะธ ะดะปั ะผะพะฑะธะปัŒะฝะพะณะพ ัƒัั‚ั€ะพะนัั‚ะฒะฐ.

เปƒเบ™เบšเบฑเบ™เบ”เบฒเบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเป‚เบ”เบ”เป€เบ”เบฑเปˆเบ™เบ‚เบญเบ‡ Bazel เปเบกเปˆเบ™เบ„เบงเบฒเบกเป„เบงเบชเบนเบ‡, เบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบทเปเบฅเบฐเบเบฒเบ™เป€เบฎเบฑเบ”เบŠเป‰เปเบฒเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบฐเบเบญเบš. เป€เบžเบทเปˆเบญเบšเบฑเบ™เบฅเบธเบ„เบงเบฒเบกเป„เบงเปƒเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบชเบนเบ‡, Bazel เปƒเบŠเป‰เป€เบ•เบฑเบเบ™เบดเบ caching เปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ™เบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡. เป„เบŸเบฅเปŒ BUILD เบˆเบฐเบ•เป‰เบญเบ‡เบเปเบฒเบ™เบปเบ”เบ„เบงเบฒเบกเป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเบ—เบฑเบ‡เบซเบกเบปเบ”เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เบšเบปเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบซเบกเปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ (เบžเบฝเบ‡เปเบ•เปˆเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ–เบทเบเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ) เปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบฐเบเบญเบš. เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฑเบ‡เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เบ›เบฐเบเบญเบšเบŠเป‰เปเบฒเบญเบตเบ, i.e. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡เบเบฒเบ™เบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ‚เบญเบ‡เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบˆเบฐเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™เบฅเบฐเบšเบปเบšเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบก, เป€เบŠเบฑเปˆเบ™: เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡.

เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบš Make เปเบฅเบฐ Ninja, Bazel เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡เปƒเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบ›เบฐเบเบญเบš, เปƒเบ™เบ™เบฑเป‰เบ™, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฑเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบเปเบฒเบฅเบฑเบ‡เบชเป‰เบฒเบ‡, เบšเบฅเบฑเบญเบเบ—เบตเปˆเป€เบฎเบฑเบ”เปเบฅเป‰เบงเบšเปเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เป€เบŠเบฑเปˆเบ™: "เบเบฒเบ™เบชเป‰เบฒเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เปƒเบ™. C++โ€, โ€œเบเบฒเบ™เบชเป‰เบฒเบ‡เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เปƒเบ™ C++โ€ เบซเบผเบท โ€œเปเบฅเปˆเบ™เบ—เบปเบ”เบชเบญเบšเบชเบณเบฅเบฑเบš C++โ€, เบžเป‰เบญเบกเบ—เบฑเบ‡เบเบณเบ™เบปเบ”เป€เบ›เบปเป‰เบฒเปเบฒเบ เปเบฅเบฐเบชเป‰เบฒเบ‡เป€เบงเบ—เบต. เปƒเบ™เป„เบŸเบฅเปŒเบ‚เปเป‰เบ„เบงเบฒเบก BUILD, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเป€เบ›เบฑเบ™เบŠเปเปˆเบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”, เป„เบŸเบฅเปŒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเป„เบŸเบฅเปŒเปเบฅเบฐเบ„เปเบฒเบชเบฑเปˆเบ‡เป€เบญเบตเป‰เบ™ compiler. เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเบœเปˆเบฒเบ™เบเบปเบ™เป„เบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™