Google hà sviluppatu un sistema di creazione
I schedarii di custruzzione di Soong ùn supportanu micca dichjarazioni cundiziunali è espressioni di ramificazione, ma solu descrizanu a struttura di u prugettu, i moduli è e dependenzii utilizati durante a custruzione. I schedarii da esse custruitu sò descritti cù maschere è raggruppati in pacchetti, ognuna di e quali hè una cullizzioni di schedari cù dipendenze assuciate. Variables ponu esse definite. Variabili è pruprietà sò strettamente tipati (u tipu di variàbili hè sceltu dinamicamente nantu à a prima assignazione, è per e pruprietà staticamente secondu u tipu di u modulu). Elementi cumplessi di a logica di l'assemblea sò trasferiti à i gestori,
Soong si intreccia cù un prughjettu più grande
Stu approcciu permette à prughjetti grandi è eterogenei, cum'è Android, per implementà elementi cumplessi di logica di l'assemblea in codice in una lingua di prugrammazione d'altu livellu, mantenendu a capacità di fà cambiamenti à i moduli ligati à l'urganizazione di l'assemblea è a struttura di u prugettu utilizendu una sintassi dichjarazione simplice. . Per esempiu, in Soong, a selezzione di bandieri di compilatore hè fatta da u gestore
cc_library {
...
srcs: ["generic.cpp"],
arcu: {
bracciu: {
srcs: ["arm.cpp"],
},
x86: {
srcs: ["x86.cpp"],
},
},
}
Source: opennet.ru