Google n ṣe agbekalẹ eto apejọ modulu kan Soong fun Android

Google n ṣe agbekalẹ eto kikọ kan Laipe, ti a ṣe lati rọpo awọn iwe afọwọkọ kikọ atijọ fun pẹpẹ Android, da lori lilo ohun elo ṣiṣe. Soong ni imọran lilo ikede ti o rọrun awọn apejuwe Awọn ofin fun apejọ awọn modulu, fun ninu awọn faili pẹlu itẹsiwaju ".bp" (blueprints). Ọna kika faili wa nitosi JSON ati, ti o ba ṣee ṣe, tun ṣe atunto sintasi ati itumọ ti awọn faili apejọ bazel. Awọn koodu ti wa ni kikọ ni Go ati pinpin labẹ awọn Apache 2.0 iwe-ašẹ.

Awọn faili kọ laipẹ ko ṣe atilẹyin awọn alaye ni àídájú ati awọn ikosile ẹka, ṣugbọn ṣapejuwe eto iṣẹ akanṣe, awọn modulu ati awọn igbẹkẹle ti a lo nigba kikọ. Awọn faili lati kọ ni a ṣapejuwe ni lilo awọn iboju iparada ati akojọpọ si awọn akojọpọ, ọkọọkan eyiti o jẹ akojọpọ awọn faili pẹlu awọn igbẹkẹle to somọ. O ti wa ni ṣee ṣe lati setumo oniyipada. Awọn oniyipada ati awọn ohun-ini ti wa ni titẹ muna (iru awọn oniyipada ni a yan ni agbara lori iṣẹ iyansilẹ akọkọ, ati fun awọn ohun-ini da lori iru module naa). Awọn eroja eka ti ọgbọn ijọ ni a gbe si awọn olutọju, ti a kọ ni Go ede.

Laipẹ intertwines pẹlu kan ti o tobi ise agbese Alailẹgbẹ, laarin eyiti eto apejọ-meta ti ko so mọ Android ti wa ni idagbasoke, eyiti, ti o da lori awọn faili pẹlu awọn apejuwe module asọye, ṣe ipilẹṣẹ awọn iwe afọwọkọ apejọ Ninja (a rirọpo fun Rii), apejuwe awọn ofin ti o nilo lati wa ni ṣiṣe lati kọ ati awọn ti o gbẹkẹle. Dipo lilo awọn ofin idiju tabi ede kan-ašẹ kan lati ṣe asọye imọ-itumọ, Blueprint nlo awọn oluṣakoso iṣẹ akanṣe ni ede Go (Laipẹ jẹ ipilẹ ti awọn oluṣakoso iru fun Android).

Ọna yii ngbanilaaye fun awọn iṣẹ akanṣe nla ati oriṣiriṣi, gẹgẹbi Android, lati ṣe awọn eroja eka ti oye apejọ ni koodu ni ede siseto ipele giga, lakoko mimu agbara lati ṣe awọn ayipada si awọn modulu ti o ni ibatan si agbari apejọ ati igbekalẹ iṣẹ akanṣe nipa lilo sintasi asọye ti o rọrun. . Fun apẹẹrẹ, ni Soong, yiyan awọn asia alakojọ jẹ ṣiṣe nipasẹ olutọju llvm.go, ati awọn ohun elo ti awọn eto ni pato si hardware faaji ti wa ni ti gbe jade nipa awọn olutọju aworan.lọ, ṣugbọn sisopọ ti awọn faili koodu ti wa ni ti gbe jade ni ".bp" faili.

cc_library {
...
srcs: ["generic.cpp"],
agba: {
apa: {
srcs: ["arm.cpp"],
},
x86:{
srcs: ["x86.cpp"],
},
},
}

orisun: opennet.ru

Fi ọrọìwòye kun