Az Android áttér a Bazel build rendszerre

Google fejlesztők akik az Android fejlesztése mögött állnak, adott bejelentés útján tudni, hogy a Projekt mozog Android nyílt forráskódú (AOSP) a Bazel build rendszer használatához a jelenlegi Soong, Ninja és Make összeállítási rendszer helyett.

A Bazel támogatást már hozzáadták az Android tárházhoz, de az átmenet alapértelmezés szerint az új build rendszerree több változatban fog elterjedni platformot, hogy a migráció a lehető legegyszerűbb és átláthatóbb legyen.

2020-ban és 2021-ben nem várható jelentős változás a peronépítési munkafolyamatokban, és fenntartják a meglévő építési rendszerek támogatását.

A fokozatos migráció lehetővé tétele érdekében néhány változás az Android összeállításainak egyszerűsítése érdekében már szerepelnek a Bazelben, például a Ninja formátumú fájlok elemzésének és futtatásának képessége.

Azt állítják, hogy az Android platform, a Bazelre való áttérés növeli a gyártási folyamat konfigurálásának rugalmasságát, Javítani fogja az építkezés előrehaladásának és figyelemmel kísérésének és a függőségek kapcsolatának ellenőrzését, megismételhető összeállításokat valósít meg, egyszerűsíti a bonyolult összeállítási parancsfájlokat, javítja az integrációt a különféle építési és tesztkezelőkkel, és csökkenti az összeállítási időt.

A Bazelbe történő áttérés lehetővé teszi az AOSP számára, hogy:

Nagyobb rugalmasságot biztosít az AOSP-fordítás konfigurálásához (jobb támogatás a feltételekhez)
Engedélyezze az AOSP felépítésének előrehaladását és függőségeit
Engedélyezze a helyes és játszható (vízzáró) AOSP-összeállításokat
Vezessen be egy konfigurációs mechanizmust, amely csökkenti az AOSP-összeállítások összetettségét
Lehetővé teszi az építési és tesztelési tevékenységek további integrálását
Mindezeket kombinálva jelentős építési időt és tapasztalati javulást érhet el
A migráció előnyei a Bazel közösség számára:

Jelentős beruházás folyik Bazelben az Android platformépítések támogatására
A Bazel ökoszisztéma- és közösségi terjeszkedése kezdetben több tízezer androidos platform-fejlesztőt és Android-telefon eredeti berendezésgyártót (chipgyártót) és chipgyártót foglal magában.
A Google Android-alkalmazások létrehozására vonatkozó Bazel-szabályai nyílt forráskódúak lesznek, az AOSP-ban használatosak, és ezeket a Google fenntartja az Android / Bazel közösséggel együttműködve.
Jobb Bazel-kompatibilitás az Android-alkalmazások létrehozásához
Jobb szabálytámogatás az Android platform felépítéséhez használt más nyelvekhez (Rust, Java, Python, Go stb.)
A Bazel Long Term Support (LTS) verzióinak erős támogatása a kibővített Bazel közösség javát szolgálja
Továbbfejlesztett dokumentáció (oktatóanyagok és referenciák)

Az ökoszisztéma Az Androidon a Bazel bővíti az érintett résztvevők számát a fejlesztésben, egyszerűsíti az alkalmazást az Android-alkalmazások felépítéséhez (beleértve a Google-t is, hogy kódot kíván megnyitni szkriptek készítéséhez Android-alkalmazásaihoz), javítani fogja az Androidban használt különféle programozási nyelvek (Rust, Java, Python, Go) támogatását, erőforrásokat fog biztosítani a hosszú verziók készítéséhez és jobb és átfogóbb dokumentációhoz vezethet.

A Bazelt a Google mérnökei fejlesztették ki és a vállalat belső projektjeinek nagy részéhez építenek. A projekt kiemelkedik nagy építési sebességével, amelyhez gyorsítótár-technikákat és az építési folyamat párhuzamosítását alkalmazzák.

Az eszközök is gondoskodjon az ismételhető összeállításrólMás szavakkal, a projekt fejlesztői gépre építésének eredménye pontosan megegyezik harmadik féltől származó rendszerek, például folyamatos integrációs szerverek felépítésével. A kiegészítő funkciók a kiterjesztések csatlakoztatásának mechanizmusán keresztül valósulnak meg.

A Make-től és Ninjától eltérően Bazel magasabb szintű megközelítést alkalmaz olyan fordítási szabályokat hozhat létre, amelyek ahelyett, hogy definiálnák a parancsfájl-kötéseket a fordítandó fájlokhoz, elvontabb előre elkészített blokkokat használnak, és meghatározzák a cél / felépítés platformjait.

A projekt összetevői a BUILD szövegfájlban vannak leírva könyvtárak, futtatható fájlok és tesztek csomagja formájában, az egyes fájlok és parancsok szintjén történő részletezés nélkül a fordító meghívására.

A BUILD fájlokban minden függőséget teljesen meg kell határozni, amely alapján döntéseket hoznak az összetevők újjáépítéséről a változtatások elvégzése után (csak a módosított fájlok épülnek át), és párhuzamosan állítják össze az összeállítási folyamatot.

forrás: https://developers.googleblog.com


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: AB Internet Networks 2008 SL
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.