Google vyvíja systém zostavovania
Súbory zostavy Soong nepodporujú podmienené príkazy a výrazy vetvenia, ale popisujú iba štruktúru projektu, moduly a závislosti použité pri zostavovaní. Súbory, ktoré sa majú zostaviť, sú opísané pomocou masiek a zoskupené do balíkov, z ktorých každý je kolekciou súborov s priradenými závislosťami. Je možné definovať premenné. Premenné a vlastnosti sú striktne typizované (typ premenných sa vyberá dynamicky pri prvom priradení a pre vlastnosti staticky v závislosti od typu modulu). Zložité prvky montážnej logiky sa presúvajú na manipulátory,
Soong sa prelína s väčším projektom
Tento prístup umožňuje veľkým a heterogénnym projektom, ako je Android, implementovať zložité prvky logiky zostavy v kóde vo vysokoúrovňovom programovacom jazyku, pričom si zachováva schopnosť vykonávať zmeny v moduloch súvisiacich s organizáciou zostavy a štruktúrou projektu pomocou jednoduchej deklaratívnej syntaxe. . Napríklad v Soong výber príznakov kompilátora vykonáva obsluha
cc_library {
...
srcs: ["generic.cpp"],
oblúk: {
rameno: {
srcs: ["arm.cpp"],
},
x86:{
srcs: ["x86.cpp"],
},
},
}
Zdroj: opennet.ru