Google ûntwikkelet in bousysteem
Soong build-bestannen stypje gjin betingsten útspraken en branching-útdrukkingen, mar beskriuwe allinich de projektstruktuer, modules en ôfhinklikens brûkt by it bouwen. De te bouwen bestannen wurde beskreaun mei maskers en groepeare yn pakketten, elk fan dat is in samling bestannen mei byhearrende ôfhinklikens. It is mooglik om fariabelen te definiearjen. Fariabelen en eigenskippen wurde strikt typearre (it type fariabelen wurdt dynamysk selektearre by earste opdracht, en foar eigenskippen statysk ôfhinklik fan it type fan de module). Komplekse eleminten fan assemblagelogika wurde ferpleatst nei handlers,
Soong ferweeft mei in grutter projekt
Dizze oanpak makket it mooglik foar grutte en heterogene projekten, lykas Android, om komplekse eleminten fan assemblagelogika yn koade te ymplementearjen yn in programmeertaal op heech nivo, wylst de mooglikheid behâldt om feroaringen te meitsjen oan modules relatearre oan assemblageorganisaasje en projektstruktuer mei ienfâldige deklarative syntaksis . Bygelyks, yn Soong wurdt de seleksje fan kompilerflaggen dien troch de handler
cc_library {
...
srcs: ["generic.cpp"],
bôge: {
earm: {
srcs: ["arm.cpp"],
},
x86:{
srcs: ["x86.cpp"],
},
},
}
Boarne: opennet.ru