GNOME Bugzilla – Bug 732847
Update build infrastructure for new package.js module
Last modified: 2014-07-17 13:45:37 UTC
Hi I'd like to merge package.js in gjs soon, but the version that will land will be slightly different from the version currently used by gnome-sound-recorder, and thus incompatible. Attached you will find the patches that update gnome-sound-recorder to the new code. Please note that the patches are not perfect: ideally you would convert also the autotools stuff and the installation directories to org.gnome.SoundRecorder, but that's not a real requirement.
Created attachment 280065 [details] [review] Adapt for the package.js which is shipped by gjs package.js requires the launched script to be named after the app it launches (otherwise pkg.name reports wrong values). Also, the sources need to be compiled in GResource now, and imports are no longer automagic. This does not affect the command line (because a symlink is installed in $(bindir) as "gnome-sound-recorder") and does not affect launching from srcdir (the real JS files are loaded)
Created attachment 280066 [details] [review] Remove libgd It is unused
Thanks, Giovanni! I'll take a look at the patches as soon as I have a little free time. Is package.js in gjs already (I looked but it seems it's a WIP branch right now), or should I hold off on this until it's merged?
Sorry I forgot to reply. package.js is not in master, I'm waiting for you to review the patches, then I'll push everything at the same time to minimize build failures in continuous. I pushed the new package.js as wip/package in gjs for you to test, if you want. I'd like to land this before the 3.13.4 release on Monday, if possible.
OK. The only problem I had with the changes was that you removed "imports.gi.versions.Gst = '1.0';". Sometimes if the version for GStreamer isn't spelled out explicitly then 0.1 is imported, which causes failures. Other than that, let me know and I'll test things out after they are pushed. I was waiting because usually I test changes and then push, but I expect that you've done that so should be fine :)
(In reply to comment #5) > OK. The only problem I had with the changes was that you removed > "imports.gi.versions.Gst = '1.0';". Sometimes if the version for GStreamer > isn't spelled out explicitly then 0.1 is imported, which causes failures. Other > than that, let me know and I'll test things out after they are pushed. I was > waiting because usually I test changes and then push, but I expect that you've > done that so should be fine :) pkg.require() does exactly that: it sets the version of all required typelibs to the passed in version (while checking that they exists) The version is global, so you only need to set it once, before the first time a module is ever imported. This was tested in a full jhbuild environment (dbus-daemon seeing the jhbuild files) and in a regular jhbuild-on-distro-shell env. Both are working fine.
Sounds fine then. You can go ahead and push your changes. I'll test it out before I make the new release on Sunday. I'll let you know if I run into any problems then.
Attachment 280065 [details] pushed as f5dbb47 - Adapt for the package.js which is shipped by gjs Attachment 280066 [details] pushed as 411f466 - Remove libgd