Google hutengeneza mfumo wa kuunganisha wa Soong wa Android

Google inaunda mfumo wa ujenzi Soon, iliyoundwa kuchukua nafasi ya hati za zamani za muundo wa jukwaa la Android, kulingana na utumiaji wa shirika la kutengeneza. Soong anapendekeza kutumia tamko rahisi maelezo sheria za kukusanyika moduli, kupewa katika faili zilizo na kiendelezi ".bp" (miongozo). Umbizo la faili liko karibu na JSON na, ikiwezekana, hurudia sintaksia na semantiki za faili za kuunganisha Bazeli. Nambari hiyo imeandikwa kwa Go na kusambazwa chini ya leseni ya Apache 2.0.

Faili za ujenzi wa Soong haziungi mkono taarifa za masharti na misemo ya matawi, lakini zinaelezea tu muundo wa mradi, moduli na vitegemezi vinavyotumiwa wakati wa kujenga. Faili zitakazoundwa zinaelezewa kwa kutumia vinyago na kuunganishwa katika vifurushi, ambayo kila moja ni mkusanyiko wa faili zilizo na tegemezi zinazohusiana. Inawezekana kufafanua vigezo. Vigezo na mali hupigwa chapa madhubuti (aina ya vigeu huchaguliwa kwa nguvu kwenye mgawo wa kwanza, na kwa mali kulingana na aina ya moduli). Vipengele ngumu vya mantiki ya kusanyiko huhamishwa kwa washughulikiaji, iliyoandikwa kwa lugha ya Go.

Hivi karibuni huingiliana na mradi mkubwa zaidi Mwongozo, ambamo mfumo wa mkusanyiko wa meta ambao haujaunganishwa na Android unatengenezwa, ambao, kulingana na faili zilizo na maelezo ya moduli ya kutangaza, hutoa hati za mkusanyiko. Ninja (badala ya make), ikielezea amri zinazohitaji kuendeshwa ili kujenga na utegemezi. Badala ya kutumia sheria changamano au lugha mahususi ya kikoa kufafanua mantiki ya muundo, Blueprint hutumia vidhibiti mahususi vya mradi katika lugha ya Go (Soong kimsingi ni seti ya vidhibiti sawa vya Android).

Mbinu hii inaruhusu miradi mikubwa na isiyo ya kawaida, kama vile Android, kutekeleza vipengele changamano vya mantiki ya mkusanyiko katika msimbo katika lugha ya kiwango cha juu ya programu, huku ikidumisha uwezo wa kufanya mabadiliko kwa moduli zinazohusiana na shirika la kusanyiko na muundo wa mradi kwa kutumia syntax rahisi ya kutangaza. . Kwa mfano, katika Soong, uteuzi wa bendera za mkusanyaji hufanywa na kidhibiti llvm.go, na utumiaji wa mipangilio maalum kwa usanifu wa vifaa unafanywa na kidhibiti sanaa.kwenda, lakini uunganisho wa faili za msimbo unafanywa katika faili ya ".bp".

cc_maktaba {
...
srcs: ["generic.cpp"],
upinde: {
mkono: {
srcs: ["arm.cpp"],
},
x86:{
srcs: ["x86.cpp"],
},
},
}

Chanzo: opennet.ru

Kuongeza maoni