تعمل Google على تطوير نظام بناء
لا تدعم ملفات بناء Soong البيانات الشرطية والتعبيرات المتفرعة، ولكنها تصف فقط بنية المشروع والوحدات النمطية والتبعيات المستخدمة عند البناء. يتم وصف الملفات التي سيتم إنشاؤها باستخدام الأقنعة ويتم تجميعها في حزم، كل منها عبارة عن مجموعة من الملفات ذات التبعيات المرتبطة بها. من الممكن تحديد المتغيرات. تتم كتابة المتغيرات والخصائص بشكل صارم (يتم تحديد نوع المتغيرات ديناميكيًا عند التعيين الأول، وبالنسبة للخصائص بشكل ثابت اعتمادًا على نوع الوحدة). يتم نقل العناصر المعقدة لمنطق التجميع إلى المعالجات،
يتشابك Soong مع مشروع أكبر
يسمح هذا النهج للمشاريع الكبيرة وغير المتجانسة، مثل Android، بتنفيذ عناصر معقدة من منطق التجميع في التعليمات البرمجية بلغة برمجة عالية المستوى، مع الحفاظ على القدرة على إجراء تغييرات على الوحدات النمطية المتعلقة بتنظيم التجميع وبنية المشروع باستخدام بناء جملة تعريفي بسيط . على سبيل المثال، في Soong، يتم تحديد علامات المترجم بواسطة المعالج
مكتبة سي سي {
...
srcs: ["generic.cpp"]،
القوس: {
ذراع: {
srcs: ["arm.cpp"]،
},
x86:{
srcs: ["x86.cpp"]،
},
},
}
المصدر: opennet.ru