Some comments<br><br><div class="gmail_quote">On Sat, Mar 14, 2009 at 1:56 AM, Edward Hervey <span dir="ltr">&lt;<a href="mailto:bilboed@gmail.com">bilboed@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
Hi all,<br>
<br>
* GIT repositories<br>
<br>
  I have finally taken time to cleanup my repositories and patches.<br>
<br>
  All the repositories are located here (the ones starting with<br>
android-) : <a href="http://cgit.freedesktop.org/%7Ebilboed/" target="_blank">http://cgit.freedesktop.org/~bilboed/</a><br>
<br>
  These repositories share all the commits from the upstream official<br>
git repositories.<br>
  glib : git://<a href="http://git.gnome.org/preview/glib" target="_blank">git.gnome.org/preview/glib</a><br>
  liboil : git://<a href="http://anongit.freedesktop.org/git/liboil" target="_blank">anongit.freedesktop.org/git/liboil</a><br>
  gst* : git://<a href="http://anongit.freedesktop.org/git/gstreamer/gst*" target="_blank">anongit.freedesktop.org/git/gstreamer/gst*</a><br>
  build : git://<a href="http://android.git.kernel.org/platform/build.git" target="_blank">android.git.kernel.org/platform/build.git</a><br>
<br>
  This makes it much easier to &#39;rebase&#39; the android patches against a<br>
newer release or commit.<br>
<br>
  These repositories only contain, so far, the patches that were on the<br>
google groups site. I splitted them up into individual commits, in order<br>
to make it easier to push upstream what can be pushed upstream and leave<br>
alone what can&#39;t be pushed upstream.<br>
<br>
  I have also modified the makefiles so that you no longer need to put<br>
them in a subdirectory in external, but directly in external (like all<br>
the other external projects).<br>
<br>
  To check them out (once you&#39;ve already checked out the full build<br>
system and done repo sync), do the following:<br>
<br>
$ cd external/<br>
$ for i in glib liboil gstreamer gst-plugins-base gst-plugins-good<br>
gst-plugins-bad; do git clone<br>
git://<a href="http://anongit.freedesktop.org/%7Ebilboed/android-$i" target="_blank">anongit.freedesktop.org/~bilboed/android-$i</a> $i; done<br>
<br>
  I have also got a &#39;build&#39; repository, currently containing the prelink<br>
patch.<br>
  You can check it out as follow:<br>
</blockquote><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
$ cd build/<br>
$ git remote add fdo<br>
git://<a href="http://anongit.freedesktop.org/%7Ebilboed/android-build" target="_blank">anongit.freedesktop.org/~bilboed/android-build</a><br>
$ git checkout -b gst fdo/master<br>
</blockquote><div></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
  From that point on, just build android as you normally would and it<br>
will build/install the libraries/plugins.<br>
<br>
<br>
* Auto-generated .c/.h files<br>
<br>
  Apart from the Android.mk files, the only thing required to compile<br>
several libraries/plugins are files that are generated by the standard<br>
autotools system at build/dist time.<br>
<br>
  We have been thinking lately with Zaheer (who ported gstreamer to S60<br>
[1]) that we should have a common location for all the .c/.h files<br>
generated at build/dist time.<br>
  Currently we have some files for the win32 build system in win32/, but<br>
we need to make this more generic. Maybe have a generated/ directory in<br>
GStreamer containing those files.<br>
  This could help solve a big chunk of the non-standard build systems.<br>
</blockquote><div>[Prajnashi S] <br>Good. This is also a pain for me. <br><br>I want to know how community handle above c/h in win release?<br>Do they re-generate these files?<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<br>
* plugins are not libraries<br>
<br>
  All the plugins are currently using the build/core/<a href="http://shared_library.mk" target="_blank">shared_library.mk</a><br>
makefile ... which results in those libraries ending up in /system/lib<br>
in the target.<br>
  This is painful for many reasons. Plugins aren&#39;t &#39;standard&#39; shared<br>
libraries:<br>
  * They don&#39;t need to be prelinked<br>
  * They are not imported at link time<br>
  * When scanning for plugins (with GST_PLUGIN_PATH=/system/lib), we end<br>
up with a *lot* of non-plugins. They should be in a separate directory,<br>
like /system/gst-plugins.<br>
<br>
  I&#39;m currently investigating a modification to the build/ system to add<br>
the notion of plugins so that we can just use &#39;<a href="http://plugin.mk" target="_blank">plugin.mk</a>&#39; in every<br>
plugin directory and have the problems above solved. I&#39;ll keep you<br>
updated on this progress and will push it to my android-build git<br>
repository.<br>
<br>
<br>
* android-gst manifest<br>
<br>
  The only thing left to bring everything together is to setup a<br>
manifest specifying all the afore-mentionned git repositories/branches.<br>
  I&#39;ll look into it.<br>
<br>
<br>
* It runs on the G1<br>
<br>
  Yes, setup the build system as you would for the G1 [2], checkout the<br>
repositories/branches mentionned above, run &#39;make&#39; from the toplevel<br>
directory and then flash your phone with it... and it works :)<br>
<br>
<br>
* Comments and feedback...<br>
<br>
  ... are most welcome as usual !<br>
<br>
    Edward<br>
<br>
[1] <a href="http://zaheer.merali.org/articles/2009/03/11/gstreamer-port-to-s60/" target="_blank">http://zaheer.merali.org/articles/2009/03/11/gstreamer-port-to-s60/</a><br>
[2] <a href="http://source.android.com/documentation/building-for-dream" target="_blank">http://source.android.com/documentation/building-for-dream</a><br>
<div><div></div><div class="h5"><br>
<br>
On Wed, 2009-03-04 at 23:17 -0800, bilboed wrote:<br>
&gt; Hi all,<br>
&gt;<br>
&gt;   I&#39;ve been using the various patches to build GStreamer for Android<br>
&gt; on the emulator and also on a dev G1 phone and it works great !<br>
&gt;<br>
&gt;   I&#39;ve cleaned/splitted up the various patches into smaller commits in<br>
&gt; git repositories I have locally.<br>
&gt;<br>
&gt;   What I can do is push upstream the various commits that can actually<br>
&gt; go upstream (like the parts to make libiconv/gettext optional for<br>
&gt; glib).<br>
&gt;<br>
&gt;   Then ideally, we should create some &#39;public&#39; git repositories to<br>
&gt; easily integrate all of this in a android build. There are many free<br>
&gt; git hosting places available to host that (github, gitorious, or we<br>
&gt; could even have those repositories at freedesktop alongside the<br>
&gt; official gstreamer repositories !). But in the long run, we should<br>
&gt; make this as easy as &#39;repo init -u &lt;gstreamer-manifest-file&gt; &amp;&amp; make&#39;.<br>
&gt;<br>
&gt;   I&#39;ll try to put my repositories online as soon as possible.<br>
&gt;<br>
&gt;   The easier we make it for people to try/use a gstreamer-based<br>
&gt; android, the better it will be for us all (more feedback, more<br>
&gt; contributors, maybe even tempting some companies to switch to<br>
&gt; gstreamer for Android?)<br>
&gt;<br>
&gt;   Comments welcome,<br>
&gt;<br>
&gt;    Edward<br>
&gt;<br>
&gt; P.S. For those wondering, I&#39;m one of the GStreamer developers,<br>
&gt; therefore very interested to push this as hard as possible :)<br>
&gt; &gt;<br>
<br>
<br>
--~--~---------~--~----~------------~-------~--~----~<br>
You received this message because you are subscribed to the Google Groups &quot;prajnashi&quot; group.<br>
To post to this group, send email to <a href="mailto:prajnashi@googlegroups.com">prajnashi@googlegroups.com</a><br>
To unsubscribe from this group, send email to <a href="mailto:prajnashi%2Bunsubscribe@googlegroups.com">prajnashi+unsubscribe@googlegroups.com</a><br>
For more options, visit this group at <a href="http://groups.google.com/group/prajnashi?hl=en" target="_blank">http://groups.google.com/group/prajnashi?hl=en</a><br>
-~----------~----~----~----~------~----~------~--~---<br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>-- Prajnashi S<br>