All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chad Versace <chad.versace@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: xorg-devel@lists.x.org, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] Android port of intel-gpu-tools
Date: Mon, 16 Jan 2012 10:25:32 -0800	[thread overview]
Message-ID: <4F146B9C.4050704@linux.intel.com> (raw)
In-Reply-To: <20120110124752.GE3979@phenom.ffwll.local>

-----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@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@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-----

  reply	other threads:[~2012-01-16 18:25 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-10  4:45 [PATCH] Android port of intel-gpu-tools Sateesh Kavuri
2012-01-10 12:47 ` Daniel Vetter
2012-01-16 18:25   ` Chad Versace [this message]
2012-01-16 18:36     ` Daniel Vetter
2012-01-16 18:53       ` Chad Versace
     [not found]         ` <4F147225.3000604-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2012-01-16 19:52           ` [Intel-gfx] " Daniel Stone
2012-01-16 19:43       ` Eugeni Dodonov
2012-01-10 15:03 ` Adam Jackson
2012-01-10 16:50   ` Kavuri, Sateesh
2012-01-16 17:58     ` Chad Versace
2012-01-11  7:54 ` Kenneth Graunke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F146B9C.4050704@linux.intel.com \
    --to=chad.versace@linux.intel.com \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=xorg-devel@lists.x.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.