Bug 79904 - [EFL] Add and use run-with-jhbuild and update-webkitefl-libs scripts for EFL
Summary: [EFL] Add and use run-with-jhbuild and update-webkitefl-libs scripts for EFL
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Linux
: P2 Normal
Assignee: Dominik Röttsches (drott)
URL:
Keywords:
Depends on: 79673
Blocks: 79480
  Show dependency treegraph
 
Reported: 2012-02-29 07:03 PST by Dominik Röttsches (drott)
Modified: 2012-03-19 08:02 PDT (History)
4 users (show)

See Also:


Attachments
Adding jhbuild build configuration for EFL, v1 (20.09 KB, patch)
2012-02-29 07:09 PST, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v2, pulling EFL from SVN (15.70 KB, patch)
2012-03-02 07:15 PST, Dominik Röttsches (drott)
no flags Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v3, pulling fixed revision of EFL from SVN, partial_build=False (15.90 KB, patch)
2012-03-02 10:16 PST, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v4 (15.64 KB, patch)
2012-03-15 05:48 PDT, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v5 (15.64 KB, patch)
2012-03-15 08:05 PDT, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v5, resubmit (15.64 KB, patch)
2012-03-16 01:09 PDT, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v6 (16.99 KB, patch)
2012-03-16 02:51 PDT, Dominik Röttsches (drott)
gyuyoung.kim: commit-queue-
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v5 (15.64 KB, patch)
2012-03-16 05:22 PDT, Dominik Röttsches (drott)
gns: review+
Details | Formatted Diff | Diff
Adding jhbuild build configuration for EFL, v7, (=v5 fixing else case) (15.62 KB, patch)
2012-03-16 06:14 PDT, Dominik Röttsches (drott)
no flags Details | Formatted Diff | Diff
Bump p11-kit to 0.12 and tickle EWS again (16.06 KB, patch)
2012-03-16 10:27 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Poke EWS again after cleaning Dependencies/ once more (16.08 KB, patch)
2012-03-16 17:52 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Add libgpg-error to jhbuild.modules (16.46 KB, patch)
2012-03-16 20:25 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Configure libgpg-error correctly (16.49 KB, patch)
2012-03-16 21:09 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Same patch after tinkering with the EFL EWS (16.49 KB, patch)
2012-03-16 21:58 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Poke EWS one more time (16.49 KB, patch)
2012-03-16 22:48 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Poke EWS one more time (16.49 KB, patch)
2012-03-16 23:20 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff
Make even more sure the jhbuild dependencies are being used (16.49 KB, patch)
2012-03-16 23:55 PDT, Raphael Kubo da Costa (:rakuco)
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dominik Röttsches (drott) 2012-02-29 07:03:30 PST
Next step for solving bug 79480, providing dependencies for EFL by using jhbuild.

Adding a run-with-jhbuild and update-webkitefl-libs variant for EFL,
then using run-with-jhbuild as a prefix to cmake.

One advantage is that we can also clamp the EFL versions.

I had to patch ecore's configure.ac to avoid a version conflict with gettext. If someone has a better idea how to fix this, suggestions are welcome.
Comment 1 Dominik Röttsches (drott) 2012-02-29 07:09:40 PST
Created attachment 129439 [details]
Adding jhbuild build configuration for EFL, v1
Comment 2 Gyuyoung Kim 2012-02-29 22:16:21 PST
Comment on attachment 129439 [details]
Adding jhbuild build configuration for EFL, v1

Attachment 129439 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11769194
Comment 3 Dominik Röttsches (drott) 2012-03-01 03:48:10 PST
(In reply to comment #2)
> (From update of attachment 129439 [details])
> Attachment 129439 [details] did not pass efl-ews (efl):
> Output: http://queues.webkit.org/results/11769194
Comment 4 Dominik Röttsches (drott) 2012-03-01 03:48:43 PST
(In reply to comment #2)
> (From update of attachment 129439 [details])
> Attachment 129439 [details] did not pass efl-ews (efl):
> Output: http://queues.webkit.org/results/11769194

The patch depends on the patch in bug 79673 - that's why efl EWS fails.
Comment 5 Raphael Kubo da Costa (:rakuco) 2012-03-01 04:34:12 PST
Comment on attachment 129439 [details]
Adding jhbuild build configuration for EFL, v1

View in context: https://bugs.webkit.org/attachment.cgi?id=129439&action=review

> Tools/Scripts/webkitdirs.pm:1970
> +        return File::Spec->catfile(sourceDir(), "Tools", "efl", "run-with-jhbuild");

Bug 79673 only creates gtk/run-with-jhbuild, are you sure this is right or you're not missing a file here?

> Tools/efl/ecore-gettext-version.patch:8
> +-AM_GNU_GETTEXT_VERSION([0.17])
> ++AM_GNU_GETTEXT_VERSION([0.18])

Can you explain the reasoning behind this patch?

> Tools/efl/jhbuild.modules:20
> +      <dep package="cairo"/>
> +      <dep package="fonts"/>
> +      <dep package="fontconfig"/>
> +      <dep package="freetype6"/>
> +      <dep package="gdk-pixbuf"/>
> +      <dep package="gtk+"/>
> +      <dep package="glib"/>
> +      <dep package="glib-networking"/>
> +      <dep package="gnome-icon-theme"/>
> +      <dep package="libsoup"/>
> +      <dep package="at-spi2-core"/>
> +      <dep package="at-spi2-atk"/>
> +      <dep package="edje"/>

From this list, I'd say the non-EFL dependencies we need are cairo, fonts, fontconfig, freetype6, glib, glib-networking and libsoup. I'm unsure about adding EFL dependencies here, as we sometimes depend on features which are only in trunk and just poke Gyuyoung to update the bot accordingly.
Comment 6 Dominik Röttsches (drott) 2012-03-01 04:46:56 PST
(In reply to comment #5)
> (From update of attachment 129439 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=129439&action=review
> 
> > Tools/Scripts/webkitdirs.pm:1970
> > +        return File::Spec->catfile(sourceDir(), "Tools", "efl", "run-with-jhbuild");
> 
> Bug 79673 only creates gtk/run-with-jhbuild, are you sure this is right or you're not missing a file here?

The failure for the EFL EWS is because it doesn't find Tools/jhbuild/jhbuild-wrapper. Creating/Moving that script is part of the patch in 79673. 
In the patch attached to this bug here (79904) I am just adding the wrapper for efl, i.e. Tools/efl/run-with-jhbuild, which is supposed to call the generic one Tools/jhbuild/jhbuild-wrapper.

> > Tools/efl/ecore-gettext-version.patch:8
> > +-AM_GNU_GETTEXT_VERSION([0.17])
> > ++AM_GNU_GETTEXT_VERSION([0.18])
> 
> Can you explain the reasoning behind this patch?

Partially ;-). Ecore doesn't build on my system without this, since Ubuntu 11.10 version of gettext is 0.18. The build sees a mismatch between autoconf and gettext macros, IIRC. 
Gyuyoung said Ubuntu 11.10 is what he'll be using for the EFL EWS, so adding a patch to bump the required gettext version in Ecore here is currently the best I could come up with. As mentioned in the initial description of this bug, better suggestions are welcome. Maybe this should be also filed as an issue against Ecore.

> > Tools/efl/jhbuild.modules:20
> > +      <dep package="cairo"/>
> > +      <dep package="fonts"/>
> > +      <dep package="fontconfig"/>
> > +      <dep package="freetype6"/>
> > +      <dep package="gdk-pixbuf"/>
> > +      <dep package="gtk+"/>
> > +      <dep package="glib"/>
> > +      <dep package="glib-networking"/>
> > +      <dep package="gnome-icon-theme"/>
> > +      <dep package="libsoup"/>
> > +      <dep package="at-spi2-core"/>
> > +      <dep package="at-spi2-atk"/>
> > +      <dep package="edje"/>
> 
> From this list, I'd say the non-EFL dependencies we need are cairo, fonts, fontconfig, freetype6, glib, glib-networking and libsoup. I'm unsure about adding EFL dependencies here, as we sometimes depend on features which are only in trunk and just poke Gyuyoung to update the bot accordingly.

So you mean, remove: gdk-pixbuf, gtk+, gnome-icon-theme, at-spi2-*? I can try that.

I am very flexible regarding whether for EFL we take SVN versions or release versions. The clear advantage of having this as part of jhbuild is though, that we don't need to poke Gyuyoung but instead a patch can be filed that updates the requested SVN revision / tag and jhbuild updates the bot's environment automaticall.y

So, in your opinion, pulling from SVN is better here? It'd be good to have Gyuyoung comment on this as well.
Comment 7 Raphael Kubo da Costa (:rakuco) 2012-03-01 05:01:48 PST
Comment on attachment 129439 [details]
Adding jhbuild build configuration for EFL, v1

View in context: https://bugs.webkit.org/attachment.cgi?id=129439&action=review

>>> Tools/Scripts/webkitdirs.pm:1970
>>> +        return File::Spec->catfile(sourceDir(), "Tools", "efl", "run-with-jhbuild");
>> 
>> Bug 79673 only creates gtk/run-with-jhbuild, are you sure this is right or you're not missing a file here?
> 
> The failure for the EFL EWS is because it doesn't find Tools/jhbuild/jhbuild-wrapper. Creating/Moving that script is part of the patch in 79673. 
> In the patch attached to this bug here (79904) I am just adding the wrapper for efl, i.e. Tools/efl/run-with-jhbuild, which is supposed to call the generic one Tools/jhbuild/jhbuild-wrapper.

D'oh, I didn't see this patch added efl/run-with-jhbuild :-)

>>> Tools/efl/ecore-gettext-version.patch:8
>>> ++AM_GNU_GETTEXT_VERSION([0.18])
>> 
>> Can you explain the reasoning behind this patch?
> 
> Partially ;-). Ecore doesn't build on my system without this, since Ubuntu 11.10 version of gettext is 0.18. The build sees a mismatch between autoconf and gettext macros, IIRC. 
> Gyuyoung said Ubuntu 11.10 is what he'll be using for the EFL EWS, so adding a patch to bump the required gettext version in Ecore here is currently the best I could come up with. As mentioned in the initial description of this bug, better suggestions are welcome. Maybe this should be also filed as an issue against Ecore.

This is weird. I have gettext 0.18.1.1 here on ArchLinux and have never had any issue building Ecore (I build it from SVN). We could try to work it out on enlightenment-devel or somewhere else, but putting the patch here looks like the wrong fix right now.

>>> Tools/efl/jhbuild.modules:20
>>> +      <dep package="edje"/>
>> 
>> From this list, I'd say the non-EFL dependencies we need are cairo, fonts, fontconfig, freetype6, glib, glib-networking and libsoup. I'm unsure about adding EFL dependencies here, as we sometimes depend on features which are only in trunk and just poke Gyuyoung to update the bot accordingly.
> 
> So you mean, remove: gdk-pixbuf, gtk+, gnome-icon-theme, at-spi2-*? I can try that.
> 
> I am very flexible regarding whether for EFL we take SVN versions or release versions. The clear advantage of having this as part of jhbuild is though, that we don't need to poke Gyuyoung but instead a patch can be filed that updates the requested SVN revision / tag and jhbuild updates the bot's environment automaticall.y
> 
> So, in your opinion, pulling from SVN is better here? It'd be good to have Gyuyoung comment on this as well.

Yes, I believe pulling the EFL from SVN is a better option here. As for the dependencies to remove, I think you're right: we only depend on the basic glib stuff, libsoup and cairo (plus the fontconfig/freetype stuff to reduce the font rendering inconsistencies). It is also possible to use pango instead of freetype as the font backend. It's not the default, but IIRC it rendered LTR languages better. Not sure how to add this here, though (the bot would need to be changed too, at least).
Comment 8 Thiago Marcos P. Santos 2012-03-01 05:10:04 PST
Adding EFL libraries as jhbuild dependencies is a good idea because:

1. Availability of EFL packages is not the best even in the mainstream distros. Anyway for people working with the trunk, a newer version of EFL is always a requirment.

2. It should make the life of people trying the port for the first time much easier by making it self-contained.

3. We can make sure that everybody is running the same version. This is specially important for libraries that has a direct impact on rendering results.

4. When a new version of a dependency is required, we just update jhbuild files and the change spreads magically to all developers, keeping test results consistence.

Qt port is doing something similar by keeping a script that builds and install Qt5 based on a git hash. Every time this hash changes on the build bot, the new hash is announced on the mailing list. Should be less error prone if we make this implicitly and automated as Dominik is suggesting.
Comment 9 Dominik Röttsches (drott) 2012-03-01 05:14:52 PST
(In reply to comment #7)

> >>> Tools/efl/ecore-gettext-version.patch:8
> >>> ++AM_GNU_GETTEXT_VERSION([0.18])
> >> 
> >> Can you explain the reasoning behind this patch?
> > 
> > Partially ;-). Ecore doesn't build on my system without this, since Ubuntu 11.10 version of gettext is 0.18. The build sees a mismatch between autoconf and gettext macros, IIRC. 
> > Gyuyoung said Ubuntu 11.10 is what he'll be using for the EFL EWS, so adding a patch to bump the required gettext version in Ecore here is currently the best I could come up with. As mentioned in the initial description of this bug, better suggestions are welcome. Maybe this should be also filed as an issue against Ecore.
> 
> This is weird. I have gettext 0.18.1.1 here on ArchLinux and have never had any issue building Ecore (I build it from SVN). We could try to work it out on enlightenment-devel or somewhere else, but putting the patch here looks like the wrong fix right now.

Agree. If you have time, it'd be good if you could apply 79673 and this patch here and try building Ecore through jhbuild on your machine (and remove that patch attribute in jhbuild.modules). It'd be interesting to see if it goes through. Might be an issue with jhbuild?
Comment 10 Raphael Kubo da Costa (:rakuco) 2012-03-01 05:56:12 PST
(In reply to comment #9)
> Agree. If you have time, it'd be good if you could apply 79673 and this patch here and try building Ecore through jhbuild on your machine (and remove that patch attribute in jhbuild.modules). It'd be interesting to see if it goes through. Might be an issue with jhbuild?

I wasn't able to make it that far, as eina failed to build with jhbuild:

*** Configuring eina *** [13/19]
./autogen.sh --prefix /home/rakuco/dev/webkit/WebKit/WebKitBuild/Dependencies/Root --libdir '/home/rakuco/dev/webkit/WebKit/WebKitBuild/Dependencies/Root/lib'  --disable-static --disable-gtk-doc
Running aclocal...
Running autoheader...
Running autoconf...
Running libtoolize...
Running automake...
doc/Makefile.am:33: wildcard $(srcdir: non-POSIX variable name
doc/Makefile.am:33: (probably a GNU make extension)
src/examples/Makefile.am:42: `pkglibdir' is not a legitimate directory for `PROGRAMS'
src/examples/Makefile.am:81: variable `eina_tiler_01_LDADD' is defined but no program or
src/examples/Makefile.am:81: library has `eina_tiler_01' as canonical name (possible typo)
Comment 11 Dominik Röttsches (drott) 2012-03-02 07:15:09 PST
Created attachment 129897 [details]
Adding jhbuild build configuration for EFL, v2, pulling EFL from SVN

Compilation of ecore is likely to fail due to the gettext version issue.
Workaround:
$ cd WebKitBuild/Dependencies/Source/ecore
$ rm -rf *
$ svn up
- then edit configure.ac and bump gettext version to 0.18
- go back to WebKit top level and run
- Tools/Scripts/update-webkitefl-libs
restart build, eg.
$ Tools/Scripts/build-webkit --efl --release
Comment 12 Dominik Röttsches (drott) 2012-03-02 07:17:23 PST
(In reply to comment #10)
> *** Configuring eina *** [13/19]
> ./autogen.sh --prefix /home/rakuco/dev/webkit/WebKit/WebKitBuild/Dependencies/Root --libdir '/home/rakuco/dev/webkit/WebKit/WebKitBuild/Dependencies/Root/lib'  --disable-static --disable-gtk-doc
> [...]
> doc/Makefile.am:33: wildcard $(srcdir: non-POSIX variable name
> doc/Makefile.am:33: (probably a GNU make extension)
> src/examples/Makefile.am:42: `pkglibdir' is not a legitimate directory for `PROGRAMS'

It seems that the release tarballs have some issues when running autogen.sh, it works a little better with the SVN heads.
Comment 13 Dominik Röttsches (drott) 2012-03-02 10:16:12 PST
Created attachment 129917 [details]
Adding jhbuild build configuration for EFL, v3, pulling fixed revision of EFL from SVN, partial_build=False

Setting partial_build=False in jhbuildrc fixes issues with gettext macro versions getting mixed up, using this patch + the patch in bug 79673 webkit-efl can be built completely using e.g. Tools/Scripts/build-webkit --efl --release. 
Thanks to Thiago for helping find this gettext/aclocal issue.
Comment 14 Gyuyoung Kim 2012-03-02 10:20:04 PST
Comment on attachment 129917 [details]
Adding jhbuild build configuration for EFL, v3, pulling fixed revision of EFL from SVN, partial_build=False

Attachment 129917 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11802039
Comment 15 Raphael Kubo da Costa (:rakuco) 2012-03-04 17:35:41 PST
Comment on attachment 129917 [details]
Adding jhbuild build configuration for EFL, v3, pulling fixed revision of EFL from SVN, partial_build=False

View in context: https://bugs.webkit.org/attachment.cgi?id=129917&action=review

I was finally able to checkout and build the EFL with this version, thanks. Pardon if my comments in the patch sound stupid, but I've never used jhbuild before ;)

From the changes to webkitdirs.pm, it looks like jhbuild will be run every time build-webkit --efl is run, right? Is that what the autotools folks also do? My concern here is that distros and people who are building from a snapshot (or a stable release when one comes out) end up having to check out the jhbuild modules and build against them instead of their system libraries.

> Tools/efl/jhbuildrc:23
> +__efl_tools_directory = os.path.abspath(os.path.dirname(__file__))
> +sys.path.append(__efl_tools_directory)
> +import common

common.py is in the same directory, are you sure you need to manually add __efl_tools_directory to sys.path?

> Tools/efl/jhbuildrc:45
> +os.environ['MAKEFLAGS'] = '-j' + str(common.number_of_cpus())

Shouldn't we respect MAKEFLAGS if it's already set? One can be using icecc and have exported MAKEFLAGS to -j40, for example.

> Tools/efl/jhbuildrc:56
> +addpath('PKG_CONFIG_PATH', os.path.join(os.sep, 'usr', _libdir, 'pkgconfig'))
> +addpath('PKG_CONFIG_PATH', os.path.join(os.sep, 'usr', 'share', 'pkgconfig'))
> +
> +addpath('XDG_DATA_DIRS', '/usr/share')
> +addpath('XDG_CONFIG_DIRS', '/etc/xdg')

Are these really necessary? Hardcoding paths here doesn't feel very good (even if 99% of the Linux distros use this directory scheme, it won't really work with my FreeBSD installation at home :-)

> Tools/efl/jhbuildrc:59
> +# GTK+ 3.0.12 misses the -lm flag when linking the tests.
> +module_makeargs['gtk+'] = 'LDFLAGS="-lm" ' + makeargs

Do we need this even if we don't depend on GTK?
Comment 16 Dominik Röttsches (drott) 2012-03-15 05:48:21 PDT
Created attachment 132026 [details]
Adding jhbuild build configuration for EFL, v4

(In reply to comment #15)
> From the changes to webkitdirs.pm, it looks like jhbuild will be run every time build-webkit --efl is run, right? Is that what the autotools folks also do? My concern here is that distros and people who are building from a snapshot (or a stable release when one comes out) end up having to check out the jhbuild modules and build against them instead of their system libraries.

As discussed on IRC, plain cmake based build should not be affected by this.

> > Tools/efl/jhbuildrc:23
> > +__efl_tools_directory = os.path.abspath(os.path.dirname(__file__))
> > +sys.path.append(__efl_tools_directory)
> > +import common
> 
> common.py is in the same directory, are you sure you need to manually add __efl_tools_directory to sys.path?

Yes, run-with-jhbuild is used from webkitdirs.pm which chdir's to WebKitBuild dir. Errors occur if I am not adding the filepath to the search path.

> > Tools/efl/jhbuildrc:45
> > +os.environ['MAKEFLAGS'] = '-j' + str(common.number_of_cpus())
> 
> Shouldn't we respect MAKEFLAGS if it's already set? One can be using icecc and have exported MAKEFLAGS to -j40, for example.

Done, not overwriting.

> > Tools/efl/jhbuildrc:56
> > +addpath('PKG_CONFIG_PATH', os.path.join(os.sep, 'usr', _libdir, 'pkgconfig'))
> > +addpath('PKG_CONFIG_PATH', os.path.join(os.sep, 'usr', 'share', 'pkgconfig'))
> > +
> > +addpath('XDG_DATA_DIRS', '/usr/share')
> > +addpath('XDG_CONFIG_DIRS', '/etc/xdg')
> 
> Are these really necessary? Hardcoding paths here doesn't feel very good (even if 99% of the Linux distros use this directory scheme, it won't really work with my FreeBSD installation at home :-)

The XDG ones seem to be necessary only for GTK+, removed.
The remaining PKG_CONFIG_PATH ones are needed to find remaining dependencies which we don't clamp using jhbuild but instead use from the system.

> > Tools/efl/jhbuildrc:59
> > +# GTK+ 3.0.12 misses the -lm flag when linking the tests.
> > +module_makeargs['gtk+'] = 'LDFLAGS="-lm" ' + makeargs
> 
> Do we need this even if we don't depend on GTK?

Removed.
Comment 17 Gyuyoung Kim 2012-03-15 05:51:53 PDT
Comment on attachment 132026 [details]
Adding jhbuild build configuration for EFL, v4

Attachment 132026 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11953756
Comment 18 Thiago Marcos P. Santos 2012-03-15 06:37:09 PDT
Better wait for bug 79673 to land before triggering EWS, isn't? :)
Comment 19 Raphael Kubo da Costa (:rakuco) 2012-03-15 07:13:31 PDT
Comment on attachment 132026 [details]
Adding jhbuild build configuration for EFL, v4

View in context: https://bugs.webkit.org/attachment.cgi?id=132026&action=review

Looks fine to be, just one nitpick below.

> Tools/efl/jhbuildrc:45
> +if (not 'MAKEFLAGS' in os.environ):

The Pythonic way of writing this is

    if 'MAKEFLAGS' not in os.environ:
Comment 20 Dominik Röttsches (drott) 2012-03-15 08:05:17 PDT
Created attachment 132050 [details]
Adding jhbuild build configuration for EFL, v5

More pythonic now.

I think this one should be landed together with 80025 in order to have a full jhbuild configuration for the EFL buildbot.
Comment 21 Gyuyoung Kim 2012-03-15 08:51:46 PDT
Comment on attachment 132050 [details]
Adding jhbuild build configuration for EFL, v5

Attachment 132050 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11958590
Comment 22 Raphael Kubo da Costa (:rakuco) 2012-03-15 09:17:49 PDT
(In reply to comment #21)
> (From update of attachment 132050 [details])
> Attachment 132050 [details] did not pass efl-ews (efl):
> Output: http://queues.webkit.org/results/11958590

Weird, the build is first failing on p11-kit.
Comment 23 Thiago Marcos P. Santos 2012-03-15 12:04:47 PDT
(In reply to comment #22)
> (In reply to comment #21)
> > (From update of attachment 132050 [details] [details])
> > Attachment 132050 [details] [details] did not pass efl-ews (efl):
> > Output: http://queues.webkit.org/results/11958590
> 
> Weird, the build is first failing on p11-kit.

libgcrypt is failing first (we might need to install some packages on the bot):

    configure: error: libgpg-error is needed.


But I think both errors are unrelated since the libs don't depend on each other.
Comment 24 Dominik Röttsches (drott) 2012-03-16 00:37:39 PDT
Gyuyoung, it seems the EWS is missing at least:
libgpg-error-dev
libpthread-stubs0-dev

Could you try running
$ apt-get build-dep p11-kit
$ apt-get build-dep libgcrypt11

Then, I'll resubmit and see whether we can get it to pass? Thanks.
Comment 25 Dominik Röttsches (drott) 2012-03-16 01:09:04 PDT
Created attachment 132225 [details]
Adding jhbuild build configuration for EFL, v5, resubmit

Resubmitting after Gyuyoung installed additional packages on EWS. (Thanks!)
Let's see if this build goes through in EWS.
Comment 26 Gyuyoung Kim 2012-03-16 01:53:08 PDT
Comment on attachment 132225 [details]
Adding jhbuild build configuration for EFL, v5, resubmit

Attachment 132225 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11966054
Comment 27 Dominik Röttsches (drott) 2012-03-16 02:51:37 PDT
Created attachment 132236 [details]
Adding jhbuild build configuration for EFL, v6

Now the build bot does not automatically fetch dependencies any more since the WebKitBuild/Depencies folder was created, I assume.
Adding an explicit jhbuild installation step to the buildbot.
Comment 28 Gyuyoung Kim 2012-03-16 04:22:54 PDT
Comment on attachment 132236 [details]
Adding jhbuild build configuration for EFL, v6

Attachment 132236 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11963129
Comment 29 Dominik Röttsches (drott) 2012-03-16 05:22:37 PDT
Created attachment 132256 [details]
Adding jhbuild build configuration for EFL, v5

Back to v5, master.cfg update needs to be manually pushed to build.webkit.org - according to README.
I created a separate bug 81337 for that.

It would be ideal if we are able to land bug 81337 and this one here, bug 79904 in direct succession.
Comment 30 Gustavo Noronha (kov) 2012-03-16 05:40:43 PDT
Comment on attachment 132256 [details]
Adding jhbuild build configuration for EFL, v5

View in context: https://bugs.webkit.org/attachment.cgi?id=132256&action=review

Partial review.

> Tools/Scripts/webkitdirs.pm:1974
> +    } else {
> +        return "";
> +    }
> +}

We don't need this else, just make the default case return "".

> Tools/efl/common.py:1
> +#!/usr/bin/env python

We should probably move this file to webkitpy so it can be shared.
Comment 31 Dominik Röttsches (drott) 2012-03-16 06:14:33 PDT
Created attachment 132267 [details]
Adding jhbuild build configuration for EFL, v7,  (=v5 fixing else case)

else case replaced by default return.
Comment 32 Raphael Kubo da Costa (:rakuco) 2012-03-16 06:18:28 PDT
Comment on attachment 132267 [details]
Adding jhbuild build configuration for EFL, v7,  (=v5 fixing else case)

Clearing the r? flag, we can just call this one the version for landing of the previous attempt.
Comment 33 Dominik Röttsches (drott) 2012-03-16 06:21:12 PDT
(In reply to comment #30)
> (From update of attachment 132256 [details])

> We don't need this else, just make the default case return "".

Done in v7.

> > Tools/efl/common.py:1
> > +#!/usr/bin/env python
> 
> We should probably move this file to webkitpy so it can be shared.

Tracked in bug 81344.
Comment 34 Gyuyoung Kim 2012-03-16 09:34:14 PDT
Comment on attachment 132267 [details]
Adding jhbuild build configuration for EFL, v7,  (=v5 fixing else case)

Attachment 132267 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11962377
Comment 35 Raphael Kubo da Costa (:rakuco) 2012-03-16 10:20:30 PDT
The p11-kit problem seems to be solved in their next release, I'll update the patch and check again.
Comment 36 Raphael Kubo da Costa (:rakuco) 2012-03-16 10:27:25 PDT
Created attachment 132312 [details]
Bump p11-kit to 0.12 and tickle EWS again
Comment 37 Gyuyoung Kim 2012-03-16 17:29:46 PDT
Comment on attachment 132312 [details]
Bump p11-kit to 0.12 and tickle EWS again

Attachment 132312 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11960843
Comment 38 Raphael Kubo da Costa (:rakuco) 2012-03-16 17:52:16 PDT
Created attachment 132429 [details]
Poke EWS again after cleaning Dependencies/ once more
Comment 39 Gyuyoung Kim 2012-03-16 20:08:33 PDT
Comment on attachment 132429 [details]
Poke EWS again after cleaning Dependencies/ once more

Attachment 132429 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11966606
Comment 40 Raphael Kubo da Costa (:rakuco) 2012-03-16 20:13:27 PDT
(In reply to comment #39)
> (From update of attachment 132429 [details])
> Attachment 132429 [details] did not pass efl-ews (efl):
> Output: http://queues.webkit.org/results/11966606

Sigh, the EFL EWS runs Ubuntu 10.04 LTS, whose libgpg-error-dev is too old (libgcrypt requires libgpg-error >= 1.8, we have 1.6). Will update jhbuild.modules again, adding gpg-error.
Comment 41 Raphael Kubo da Costa (:rakuco) 2012-03-16 20:25:11 PDT
Created attachment 132440 [details]
Add libgpg-error to jhbuild.modules
Comment 42 Gyuyoung Kim 2012-03-16 21:02:29 PDT
Comment on attachment 132440 [details]
Add libgpg-error to jhbuild.modules

Attachment 132440 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11974275
Comment 43 Raphael Kubo da Costa (:rakuco) 2012-03-16 21:09:15 PDT
Created attachment 132442 [details]
Configure libgpg-error correctly
Comment 44 Gyuyoung Kim 2012-03-16 21:32:33 PDT
Comment on attachment 132442 [details]
Configure libgpg-error correctly

Attachment 132442 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11960970
Comment 45 Raphael Kubo da Costa (:rakuco) 2012-03-16 21:58:43 PDT
Created attachment 132443 [details]
Same patch after tinkering with the EFL EWS
Comment 46 Raphael Kubo da Costa (:rakuco) 2012-03-16 22:48:31 PDT
Created attachment 132446 [details]
Poke EWS one more time
Comment 47 Raphael Kubo da Costa (:rakuco) 2012-03-16 23:20:52 PDT
Created attachment 132448 [details]
Poke EWS one more time
Comment 48 Raphael Kubo da Costa (:rakuco) 2012-03-16 23:55:52 PDT
Created attachment 132450 [details]
Make even more sure the jhbuild dependencies are being used
Comment 49 Raphael Kubo da Costa (:rakuco) 2012-03-17 00:26:26 PDT
(In reply to comment #48)
> Created an attachment (id=132450) [details]
> Make even more sure the jhbuild dependencies are being used

Excellent, 17th time is a charm :-)

After tinkering with the EWS more than I would have liked, the last run finally picked up the libraries and binaries from WebKitBuild/Dependencies, so we're good to go.
Comment 50 Raphael Kubo da Costa (:rakuco) 2012-03-17 00:30:37 PDT
Committed r111115: <http://trac.webkit.org/changeset/111115>
Comment 51 Dominik Röttsches (drott) 2012-03-19 08:02:03 PDT
In Bug 81510 we needed to put the XDG_* vars back in.