Bug 42530 - Support for building on Android
Summary: Support for building on Android
Status: RESOLVED FIXED
Alias: None
Product: Ytstenut
Classification: Unclassified
Component: plugins (show other bugs)
Version: unspecified
Hardware: Other other
: high critical
Assignee: Alvaro Soliverez
QA Contact:
URL:
Whiteboard: review+
Keywords: patch
Depends on:
Blocks:
 
Reported: 2011-11-02 12:24 UTC by Alvaro Soliverez
Modified: 2012-02-28 11:21 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Respect HAVE_GETTEXT (784 bytes, patch)
2011-11-02 12:24 UTC, Alvaro Soliverez
Details | Splinter Review
Support for Android patch (3.45 KB, patch)
2011-11-02 12:25 UTC, Alvaro Soliverez
Details | Splinter Review
Support building gabble plugins (1.68 KB, patch)
2011-11-02 12:26 UTC, Alvaro Soliverez
Details | Splinter Review
make sure the proper GABBLE,SALUT define is given (1.42 KB, patch)
2011-11-02 12:27 UTC, Alvaro Soliverez
Details | Splinter Review
gabble: copy plugin-base files to gabble directory (1.62 KB, patch)
2011-11-02 12:28 UTC, Alvaro Soliverez
Details | Splinter Review
Support for Android - fixed (6.10 KB, patch)
2011-11-24 08:46 UTC, Alvaro Soliverez
Details | Splinter Review
Support for Android - fixed (6.82 KB, patch)
2011-11-24 13:13 UTC, Alvaro Soliverez
Details | Splinter Review
Support for Android - fixed (6.82 KB, patch)
2012-01-30 05:03 UTC, Alvaro Soliverez
Details | Splinter Review
Support to build on Android (6.21 KB, patch)
2012-02-09 03:28 UTC, Alvaro Soliverez
Details | Splinter Review
Fix for gabble plugin refactor (814 bytes, patch)
2012-02-09 03:29 UTC, Alvaro Soliverez
Details | Splinter Review
Support for Android patch (6.10 KB, patch)
2012-02-09 17:13 UTC, Alvaro Soliverez
Details | Splinter Review

Description Alvaro Soliverez 2011-11-02 12:24:56 UTC
Created attachment 53076 [details] [review]
Respect HAVE_GETTEXT

These patches enable building on Android using Android NDK and androgenizer
Comment 1 Alvaro Soliverez 2011-11-02 12:25:56 UTC
Created attachment 53077 [details] [review]
Support for Android patch
Comment 2 Alvaro Soliverez 2011-11-02 12:26:28 UTC
Created attachment 53078 [details] [review]
Support building gabble plugins
Comment 3 Alvaro Soliverez 2011-11-02 12:27:14 UTC
Created attachment 53079 [details] [review]
make sure the proper GABBLE,SALUT define  is given
Comment 4 Alvaro Soliverez 2011-11-02 12:28:06 UTC
Created attachment 53080 [details] [review]
gabble: copy plugin-base files to gabble directory

Android doesn't like building this stuff in a common directory to the
salut plugin because it stores the object files in the same place, but
salut != gabble...
Comment 5 Will Thompson 2011-11-22 09:43:49 UTC
Comment on attachment 53077 [details] [review]
Support for Android patch

Review of attachment 53077 [details] [review]:
-----------------------------------------------------------------

::: salut/Makefile.am
@@ +37,5 @@
> +	 -:CFLAGS $(DEFS) $(CFLAGS) $(DEFAULT_INCLUDES) $(INCLUDES) \
> +	  $(AM_CFLAGS) -I../../wocky \
> +	 -:CPPFLAGS $(CPPFLAGS) $(AM_CPPFLAGS) \
> +	 -:LDFLAGS $(AM_LDFLAGS) $(ytstenut_salut_la_LIBADD) -lwocky \
> +	  -ltelepathy-salut -lxml2 \

Hardcoded link flags :(
Comment 6 Will Thompson 2011-11-22 09:44:49 UTC
Comment on attachment 53078 [details] [review]
Support building gabble plugins

Review of attachment 53078 [details] [review]:
-----------------------------------------------------------------

::: gabble/Makefile.am
@@ +37,5 @@
> +	 -:CFLAGS $(DEFS) $(CFLAGS) $(DEFAULT_INCLUDES) $(INCLUDES) \
> +	  $(AM_CFLAGS) -I../../wocky \
> +	 -:CPPFLAGS $(CPPFLAGS) $(AM_CPPFLAGS) \
> +	 -:LDFLAGS $(AM_LDFLAGS) $(ytstenut_gabble_la_LIBADD) -lwocky \
> +	  -ltelepathy-gabble -lxml2 \

Ditto.
Comment 7 Will Thompson 2011-11-22 09:45:43 UTC
Comment on attachment 53080 [details] [review]
gabble: copy plugin-base files to gabble directory

Review of attachment 53080 [details] [review]:
-----------------------------------------------------------------

Doesn't this break the build on non-Android?
Comment 8 Alvaro Soliverez 2011-11-24 08:46:05 UTC
Created attachment 53833 [details] [review]
Support for Android - fixed

This fixes the hardcoded libs.

It requires patches to salut and gabble, which I'll submit next
Comment 9 Alvaro Soliverez 2011-11-24 13:13:00 UTC
Created attachment 53839 [details] [review]
Support for Android - fixed

I had to reintroduce the -ltelepathy-x hardcode because neither gabble nor salut are declared as libs in PKG_CONFIG and the patches I had submitted to add that were rejected because it is not safe to do that.

As this is a special case, I'd rather leave these 2 hardcodes in this case.
Comment 10 Rob Staudinger 2012-01-09 08:28:55 UTC
Please commit, thanks.
Comment 11 Alvaro Soliverez 2012-01-11 06:52:44 UTC
This is the link to the branch with the commits: http://cgit.freedesktop.org/~asoliverez/ytstenut-plugins/log/?h=android
Comment 12 Jonny Lamb 2012-01-12 10:08:59 UTC
> Support for building on Android, modified from patches by Derek Foreman and Johnny Lamb

That is not my name.
Comment 13 Alvaro Soliverez 2012-01-30 05:03:46 UTC
Created attachment 56323 [details] [review]
Support for Android - fixed

Fixed the Jonny's name. Extremely sorry about that.
Comment 14 Alvaro Soliverez 2012-02-09 03:28:41 UTC
Created attachment 56806 [details] [review]
Support to build on Android

Patch updated to latest master
Comment 15 Alvaro Soliverez 2012-02-09 03:29:13 UTC
Created attachment 56807 [details] [review]
Fix for gabble plugin refactor
Comment 16 Alvaro Soliverez 2012-02-09 03:30:01 UTC
Please, can someone with permissions push this after it's reviewed? Thanks!
Comment 17 Olli Salli 2012-02-09 10:59:15 UTC
(In reply to comment #15)
> Created attachment 56807 [details] [review] [review]
> Fix for gabble plugin refactor

GABBLE_LIBS already contains -lgabble-plugins. Please remove the redundant mention, so you're not tied to the exact library file name.
Comment 18 Olli Salli 2012-02-09 11:08:24 UTC
(In reply to comment #14)
> Created attachment 56806 [details] [review] [review]
> Support to build on Android
> 
> Patch updated to latest master

Jonny's name reverted back!

 ytstenut_gabble_la_SOURCES = \
...
-	$(top_srcdir)/plugin-base/ytstenut.h \
...
-	$(top_srcdir)/plugin-base/caps-manager.h \
...
-	message-channel.h \

Headers are still sources. If it's troublesome to refer to the headers in the other directory as SOURCES, please at least include the ones in the current directory.
Comment 19 Alvaro Soliverez 2012-02-09 17:13:46 UTC
Created attachment 56843 [details] [review]
Support for Android patch

Patch with corrections from Olli's review
Comment 20 Olli Salli 2012-02-11 11:22:32 UTC
Okay, apparently it's troublesome to mark stuff from other directories as sources. Jonny's name is fixed, and the CM libs aren't mentioned explicitly anymore. That's enough for me. Please merge.
Comment 21 Alvaro Soliverez 2012-02-20 05:03:39 UTC
(In reply to comment #20)
> Okay, apparently it's troublesome to mark stuff from other directories as sources. 

That's because in Android, the stuff from other directories is copied, because it can't be compiled multiple times. It's the copied_files you see there. Jonny had to work around that when adding the plugins
Comment 22 Alvaro Soliverez 2012-02-23 05:17:21 UTC
commit 9ceff79bbfa423452249298684543f5f2dbe581b
Author: Alvaro Soliverez <alvaro.soliverez@collabora.co.uk>
Date:   Tue Dec 13 16:37:54 2011 -0300

    Support for building on Android, modified from patches by Derek Foreman and Johnny Lamb

commit 1e8ce5770f6a908b133aa2b0401b2e4f7dc9c1b5
Author: Derek Foreman <derek.foreman@collabora.co.uk>
Date:   Mon May 16 10:22:21 2011 -0400

    respect HAVE_GETTEXT
Comment 23 Jonny Lamb 2012-02-28 11:21:20 UTC
(In reply to comment #13)
> Created attachment 56323 [details] [review] [review]
> Support for Android - fixed
> 
> Fixed the Jonny's name. Extremely sorry about that.

(In reply to comment #22)
> commit 9ceff79bbfa423452249298684543f5f2dbe581b
> Author: Alvaro Soliverez <alvaro.soliverez@collabora.co.uk>
> Date:   Tue Dec 13 16:37:54 2011 -0300
> 
>     Support for building on Android, modified from patches by Derek Foreman and
> Johnny Lamb


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.