Sziasztok/üdv!
Én a CM7-es forráson edződtem, de ez egy kicsit neccesebb. Megváltozott ugyanis a build system. Nincs bent a repo-ban már az összes eszköz, csak azt sync-eli utólag le, amivel éppen dolgozni fogunk. Ennek viszont van egy nagyon kellemetlen következménye, amit szerintem kevesen ismernek még. Történetesen arról van szó, hogy a
. build/envsetup.sh && brunch devname
..parancs szépen behúzza a megfelelő eszközt és be is állít mindent. A gondok akkor kezdődnek, ha -ahogy a CM7 esetén- a
. build/envsetup.sh parancsot használjuk, mondván hogy majd csomagokat építünk. Ezután pedig misem egyszerűbb... (persze egy build után...)
mmm csomag elérési útja...
..és mégsem. Ez a CM7 alatt ment utoljára. Ha ezt az utat követjük, akkor a fordító automatikusan generic ágra
ugrik és mivel abban már nincs kernel config... szépen el fog hajtani. Két napig szenvedtem vele, mire rájöttem, hogy a "make" sem megy így és semmi más sem...
Szóval. Maradjunk egy testközeli példánál. ZTE Blade-re fordítok. Ennek a csomagfordítása a következő paranccsal megy: (legyen most ez a settings.apk) Az egyszerűség kedvéért a könyvtárban állunk, ahol a letöltött forrás van.
export USE_CCACHE=1 CM=SNAPSHOOT=1
. build/envsetup.sh
lunch cm_blade-userdebug
mmm media/Data/ICS/packages/apps/Settings
..az utolsó sorban némi magyarázatra szorulhat az elérési út. Nos. Nálam a másik meghajtón van a CM9 forrása, mert nem fértek el a CM7-el egyben.
A másik fontos dolog.
A device mappában vannak az eszközök egyedi forrásai. Eddig aki eljutott, ezt nyilván tudja. Ezekben van egy "overlay" mappa. Ez egy ügyes kis trükk. Mire is való? Konkrétan, amit itt lehelyezünk módosítást, azt a fordító innen olvassa be, nem a forrásból. Vigyázni kell persze arra, hogy a mappaszerkezet megmaradjon olyannak, mint ami "körülötte" van, illetve, hogy ez csak akkor van használatban, mikor a teljes fordítás megy. Ha megváltoztatjuk, sajnos szükség lesz a teljes újraépítésre. Jó ha erre figyel az ember, mert ez nálam konkrétan 9,5 óra, lévén egy egymagos Intel Atom a szerencsétlen elszenvedője a folyamatnak.
Remélem valakinek hasznára volt ez az info.