-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 01/10/2012 04:47 AM, Daniel Vetter wrote: > On Tue, Jan 10, 2012 at 10:15:01AM +0530, Sateesh Kavuri wrote: >> Added support for Android. Changes include fixes for compilation issues >> related to Android using an older version of GCC compiler (ver 4.3.3) >> while the latest version of intel-gpu-tools confirms to GCC ver 4.5.2 >> (C99 standard functions), using functions like getline(). Fixed such >> functions, header dependencies for android and added an Android.mk file. >> >> signed-off-by: Sateesh Kavuri <sateesh.kavuri at intel.com> > > A few comments > - It looks like you need a completely separate makefile for android. Is > there no way to let the automake tools generate that somehow? Because > this simply won't scale. > > - There's too much ANDRIOD #ifdef'ery in the code. Either switch to a > construct that works on all platforms or extract things into a little > helper functions (like the get_total_ram helper that has recently been > ported to Solaris). > > - You don't seem to touch the testsuite, and I think you want it on > Andriod, too. > > Added xorg-devel to cc, maybe someone else has already tried this with a > different package, my buildsystem fu is not up to this. > > Yours, Daniel Daniel, the Android.mk's are the curse of every project that is ported to Android. Android has it's own build system, and those makefiles can't be generated with autotools. This was a contentious issue when Chia-I Wu and I ported Mesa to Android and led to a discussion [1] on mesa-dev. Below is quoted my key email from that discussion (the Dan I'm speaking to is a Debian maitainer). [1] http://article.gmane.org/gmane.comp.video.mesa3d.devel/28881/match=add+toplevel+android+mk > To address Dan's questions, the Android build cannot be fitted into autoconf or > configs/android. I explored this option, and discovered that it was impossible. > The Android build system is... well... interesting. Allow me to explain. > > The entirety of the Android project --- libc, webkit, the window manager, > *everything* --- exists in a single source tree [1]. And that source tree is > built with a single, non-recursive invocation of make. Every time I say that, I > find it hard to believe myself, so I'll say it again: The entirety of the > Android OS, all core libraries and apps, are built with a single, non-recursive > invocation of make. (The kernel is the special exception to this > all-encompassing build). The final build artifact is a bootable iso image. > > [1] http://android.git.kernel.org/ > > Given this unified design of the Android source tree and build process, it > requires system components, such as Mesa, to be integrated into its build > system. If Mesa is going to support Android, the Android.mk's are necessary. > > To address another concern of Dan's, this will not add another way to configure > the Mesa build. Android handles the system's build configuration in a single > location which is outside of Mesa. > > I'm aware that the extra set of makefiles is unwelcome, but their presence will > be innocuous. The only people that will need to touch them are those maintaining > the Android build. - ---- Chad Versace chad.versace at linux.intel.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQIcBAEBAgAGBQJPFGubAAoJEAIvNt057x8iTckQAKf3DPB3zAnVwEPcmad3BacJ +3SfLISJUJPxoNpROYXiM/50bti/xir6x68Hez3jryzgFpSUTo2jpdXT2CalXSeN ITdScopl4p0gNu4zxXiWzIv5445RLswkf1IArvL25LABRnQ1xSLdp6qTUZcfZXTa bpzPM27p7k2FNvWN9z0vwNI8ebtMAwapvsb2lLyFeIfiB2ldQJIsclP1iOMylRlS wSSEdqmWm7OTzpnocAaptCFDeolNplN7zvBfzMs9/AOCs1miKo+nUlf0GUf1CN0V xuLrIf4UZn8sNLlsw5Mnc3uBIT5q8NR/rz60IswDKgm/W4pJbjRViaaecNjpbuvL tzUE99CUtSmK/MY6TiSqlgTzgYRFk1qGu9bGxhbWyJE76gAjOX7A1OL+DsPj+wgR DfAEKfcfFsUCDCkm3604uhl6hJauu3lDEVxL/6jAm/jMLzvwaxBPoMdS6QFtQ3QR tTlZ4Y13jDnp+SOar3eLjgDE+pcdsFIHaFZ0ZxYEjgCHGVhP4ye3BaqMtMopwths HcscB47/xz4y4CmEgBvDmcuPaxw6rgNd9d8543zvWlheb/dGH9yNJcoLBq0dz3tW P/m0A+Hnv2gfLaopbPZIAPUKdR/iqA4cgoSKQq7OI46He4CHApatPapunL4IKCpU eSulLcm0Dqpc6fz2zL1B =Xlzm -----END PGP SIGNATURE-----