Google izstrādā montāžas sistēmu
Soong build faili neatbalsta nosacījumu paziņojumus un sazarošanas izteiksmes, bet tikai apraksta projekta struktūru, moduļus un būvniecībā izmantotās atkarības. Veidojamie faili ir aprakstīti, izmantojot aizstājējzīmes, un sagrupēti pakotnēs, no kurām katra ir failu kolekcija ar saistītajām atkarībām. Ir iespējams definēt mainīgos. Mainīgie un rekvizīti ir stingri tipizēti (mainīgo tips tiek izvēlēts dinamiski pirmajā piešķiršanas reizē un rekvizītiem statiski, atkarībā no moduļa veida). Sarežģītie montāžas loģikas elementi tiek pārvietoti uz apstrādātājiem,
Soongs savijas ar vispārīgāku projektu
Šī pieeja ļauj lieliem un neviendabīgiem projektiem, piemēram, Android, ieviest kompleksus montāžas loģikas elementus kodā augsta līmeņa programmēšanas valodā, vienlaikus saglabājot iespēju veikt izmaiņas moduļos, kas saistīti ar montāžas organizāciju un projekta struktūru, izmantojot vienkāršu deklaratīvu. sintakse. Piemēram, Soong kompilatora karogu izvēli veic apstrādātājs
cc_library {
...
srcs: ["generic.cpp"],
arka: {
roka: {
srcs: ["arm.cpp"],
},
x86: {
srcs: ["x86.cpp"],
},
},
}
Avots: opennet.ru