https://mail.gnome.org/archives/gnome-announce-list/2014-January/msg00003.html Reproducible: Always
Created attachment 367362 [details] Initial ebuild failing install phase This requires a version bump of dev-libs/libgit2-glib to 0.0.10 , trivially renaming the ebuild worked for me (verified deps are unchanged). I've attempted writing an ebuild for gitg-0.3.1 - a lot has changed since the upstream project did a complete rewrite using vala. I got it compiling fine (deps etc.) but I'm seeing an error[1] on the install phase, looks like libgitg-ext isn't found by the linker (it's built from the same sources). I'm going to look into it further, just adding the ebuild here in case anyone feels like picking it up to make more progress. [1] libtool: relink: x86_64-pc-linux-gnu-gcc -shared -fPIC -DPIC plugins/files/.libs/plugins_files_libfiles_la-gitg-files.o plugins/files/.libs/plugins_files_libfiles_la-gitg-files-tree-store.o plugins/files/.libs/plugins_files_libfiles_la-gitg-files-resources.o -L/usr//usr/lib64 -lgthread-2.0 -lgit2-glib-1.0 -lgit2 -lwebkit2gtk-3.0 -lsoup-2.4 -ljavascriptcoregtk-3.0 -lgee-0.8 -ljson-glib-1.0 -lgtksourceview-3.0 -lpeas-gtk-1.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lpeas-1.0 -lgmodule-2.0 -lgio-2.0 -lgirepository-1.0 -lgobject-2.0 -lglib-2.0 -lgtkspell3-3 -Wl,--as-needed -L/var/tmp/portage/dev-vcs/gitg-0.3.1/image//usr/lib64 -L/usr/lib64 -lgitg-1.0 -lgitg-ext-1.0 -lm -pthread -pthread -march=native -O3 -pthread -Wl,--export-dynamic -pthread -Wl,--export-dynamic -pthread -Wl,-O1 -pthread -Wl,-soname -Wl,libfiles.so -o plugins/files/.libs/libfiles.so //usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lgitg-ext-1.0 usr/lib/gcc/x86_64-collect2: error: ld returned 1 exit status pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lgitg-ext-1.0 collect2: error: ld returned 1 exit status
Created attachment 367370 [details] dev-vcs/gitg-0.3.1 working ebuild missing one dependency (maybe more, one identified) Actually I did not write this ebuild, but grknight from #gentoo on freenode did and gave it to me this just about two days ago. I was able to install gitg and was able to open/display a git repository from github. I guess this ebuild might have to additionally depend on net-libs/webkit-gtk[introspection], because grknight said that for him the ebuild failed. It complained about a missing file /usr/share/gir-1.0/WebKit-3.0.gir or was it /usr/share/gir-1.0/WebKit2-3.0.gir ? These files are part of net-libs/webkit-gtk . I guess for me the ebuild worked, because have built net-libs/webkit-gtk with USE=introspection . My exact net-libs/webkit-gtk USE flags are egl geoloc gstreamer introspection jit libsecret opengl spell webgl -aqua -coverage -debug -gles2 -test
(In reply to Konstantin from comment #2) > I was able to install gitg and was able to open/display a git repository > from github. Were you able to run gitg? gitg needs libgit2 with treading support, but currently Gentoo does not provide a package with threading support for dev-libs/libgit2. This is what I get when I try to run it: ** (gitg:23572): ERROR **: gitg-init.vala:27: libgit2 must be built with threading support in order to run gitg
Bug #497352 provides dev-lib/libgit2 threading support, so that bug needs to be solved first. Please add dependency on that bug.
Created attachment 367398 [details] gitg-0.3.1.ebuild with fixed dependencies, reviewed by upstream I made the following changes based on Konstantin's ebuild: - Copyright and Header - Updated home page - Removed gnome-base/gconf and dev-vcs/git. The last one has been replaced by dev-libs/libgit2. Both dependencies have been confirmed as no longer needed by upstream. - Upstream has confirmed that the following USE dependencies are needed: net-libs/webkit-gtk[introspection] dev-libs/libgit2[threads] - Removed --disable-maintainer-mode configure flag. This flag was added because of bug #363009. The warning that raised that bug has been already fixed. - Disabled parallel make on install phase (the reason for "cannot find -lgitg-ext-1.0"). Suggested by upstream, see http://blogs.gnome.org/jessevdk/2014/01/07/vala-and-autobuild/ - configure script looks for versions of vala > 0.20.1.23 and upstream has confirmed that it also works with 0.22, so I replaced VALA_MAX_API_VERSION="0.20" with VALA_MIN_API_VERSION="0.20". I'm not very familiar with vala eclass, I hope I'm doing it right. - Added and fixed some dependencies version to match configure script dependencies. - dev-libs/gtkspell? This doesn't exist on Portage. Changed to app-text/gtkspell. What does that src_test() function do? Is it actually needed?
Created attachment 367472 [details] build.log webkit-gtk-2.0.4 fails to build with net-libs/webkit-gtk-2.0.4 but builds fine with net-libs/webkit-gtk-2.2.2
Created attachment 367488 [details] gitg-0.3.1.ebuild fixed net-libs/webkit-gtk dependency version Thanks, poncho, you are right. >=net-libs/webkit-gtk-2.2 is required: http://webkitgtk.org/reference/webkit2gtk/stable/WebKitSettings.html#webkit-settings-set-enable-write-console-messages-to-stdout http://webkitgtk.org/reference/webkit2gtk/stable/WebKitURISchemeRequest.html#webkit-uri-scheme-request-finish-error Ebuild updated and reported to upstream since configure script still checks for >=net-libs/webkit-gtk-1.9.92
0.3.2 just released, I will start to work on it tomorrow.
Created attachment 367568 [details] gitg-0.3.2.ebuild Version bump: gitg-0.3.2 Ebuild changes pulled by version bump: - Newer version required for some dependencies Other changes that I have detected that are needed while making ebuild for 0.3.2 but that would also probably be needed for 0.3.1 but I'm not sure if we are going to push 0.3.1 to Portage now that 0.3.2 has already been released: - Added python USE flag. Python support is only needed by gitg plugins using python, so is a dependency that will have to be pulled by those plugins using it. Upstream has confirmed that only python targets >= 3.2 are supported and that this flag is only needed for those plugins using it (currently none). - Added missing dependency: dev-libs/json-glib I have added dev-python/pygobject as dependency when using python USE flag even when this dependency is already pulled by dev-libs/libpeas[python] because pygobject is explicitly required by gitg: GitgExt.py:1:from gi.repository import GObject
Created attachment 367570 [details] metadata.xml Updated metadata.xml to include python USE flag.
Thanks Jesús, Poncho, Mark and Konstantin for working on the new ebuild. I'm a little busy at the moment, and this is still blocking on libgit2-glib which I'm not the maintainer of, but once that's updated and things have settled down a little, I'll be pushing 0.3.2. I won't bother pushing 0.3.1, since there seems little point with the newer version out.
Hi, Mike, thanks for your reply. This bug also depends on bug #497352 (dev-libs/libgit2 - add threads USE flag). Could you or Konstantin please are this bug dependency?
Thank you all. This works beautifully after also emerging the ebuilds from: #497518 and #497352 on my ~amd64 system.
+*gitg-0.3.2 (08 Feb 2014) + + 08 Feb 2014; Justin Lecher <jlec@gentoo.org> +gitg-0.3.2.ebuild, + metadata.xml: + Version Bump, #497358; thanks for Mark R. Pariente, Konstantin and Jesús + Pérez (Chuso) working on the ebuild + I added the following changes --- gitg-0.3.2.ebuild.original 2014-02-08 15:36:14.634482656 +0100 +++ gitg-0.3.2.ebuild 2014-02-08 15:33:20.000000000 +0100 @@ -1,12 +1,13 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: $ +# $Header: /var/cvsroot/gentoo-x86/dev-vcs/gitg/gitg-0.3.2.ebuild,v 1.1 2014/02/08 14:33:20 jlec Exp $ EAPI=5 VALA_MIN_API_VERSION="0.20" PYTHON_COMPAT=( python{3_2,3_3} ) -inherit base eutils gnome2 vala python-r1 + +inherit autotools gnome2 python-r1 vala DESCRIPTION="git repository viewer for GNOME" HOMEPAGE="https://wiki.gnome.org/Apps/Gitg" @@ -14,36 +15,46 @@ LICENSE="|| ( GPL-2 GPL-3 )" SLOT="0" KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -# FIXME: debug changes CFLAGS -IUSE="debug glade python" +IUSE="debug glade +python" -RDEPEND=">=dev-libs/glib-2.38:2 - >=x11-libs/gtk+-3.10.0:3 - >=x11-libs/gtksourceview-3.10:3.0 - >=gnome-base/gsettings-desktop-schemas-0.1.1 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +# test if unbundling of libgd is possible +# Currently it seems not to be (unstable API/ABI) +RDEPEND=" dev-libs/libgee:0.8 >=dev-libs/json-glib-0.16 - >=dev-libs/libpeas-1.5.0[gtk] + >=app-text/gtkspell-3.0.3:3 + >=dev-libs/glib-2.38:2 >=dev-libs/gobject-introspection-0.10.1 - >=net-libs/webkit-gtk-2.2:3[introspection] dev-libs/libgit2[threads] >=dev-libs/libgit2-glib-0.0.10 - >=app-text/gtkspell-3.0.3:3 + >=dev-libs/libpeas-1.5.0[gtk] + >=gnome-base/gsettings-desktop-schemas-0.1.1 + >=net-libs/webkit-gtk-2.2:3[introspection] + >=x11-libs/gtk+-3.10.0:3 + >=x11-libs/gtksourceview-3.10:3.0 glade? ( >=dev-util/glade-3.2:3.10 ) python? ( - dev-libs/libpeas[python] - dev-python/pygobject:3 + ${PYTHON_DEPS} + dev-libs/libpeas[python,${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] ) " DEPEND="${RDEPEND} >=sys-devel/gettext-0.17 virtual/pkgconfig - >=dev-util/intltool-0.40" + >=dev-util/intltool-0.40 + $(vala_depend)" DOCS="AUTHORS ChangeLog NEWS README" src_prepare() { - base_src_prepare + sed \ + -e '/CFLAGS/s:-g::g' \ + -e '/CFLAGS/s:-O0::g' \ + -i configure.ac || die + eautoreconf gnome2_src_prepare vala_src_prepare } @@ -62,9 +73,5 @@ } src_install() { - emake -j1 DESTDIR="${D}" install || die -} - -src_test() { - default + gnome2_src_install -j1 }