اصنع قواعد

لا تحدد قواعد الصنع في تكوين المنتج. تبدو قاعدة الإنشاء كما يلي:

output_file_name: dependencies
    shell commands to build the output

الغرض من تكوين المنتج/اللوحة هو تعيين المتغيرات التي يتم استخدامها لاحقًا في البناء فقط، وليس تحديد إجراءات البناء الجديدة. يجب تحويل هذه القواعد إلى وحدات Soong، أو عندما يكون تحويل Bazel بعيدًا بدرجة كافية، فإن Bazel يستهدف. يعد نوع الوحدة genrule لـ Soong عامًا بما يكفي لتغطية معظم حالات الاستخدام.

إذا كان التحويل إلى Soong يمثل تحديًا كبيرًا في الوقت الحالي، فانقل القاعدة إلى أي ملف يطابق {device,product,vendor}/*/[*/]build/tasks/*.mk . يتم دائمًا تضمين هذه الملفات بواسطة نظام الإنشاء، ولكنها منفصلة عن تكوين المنتج. يتم تضمينها طوال الوقت، لذلك يجب حماية أي قواعد تتم إضافتها هناك بواسطة متغير تم تعيينه في تكوين المنتج، لذلك لا يتم تحديد القاعدة للمنتجات الأخرى. راجع قائمة التغيير هذه، انقل قواعد إنشاء اللوحة من تكوين اللوحة إلى البناء/المهام

ضع في اعتبارك أنه سيتعين أيضًا إزالة مجلدات build/tasks في النهاية عند إزالة Make من الإصدار بالكامل.