[Evolution-hackers] cannot build: No rule to make target libegdbus-book.la



Hi Milan,

In this bug report [1] you asked me to test a patch for
evolution-data-server 3.2. Unfortunately, I am having some trouble
building the package from source. I started from my currently
installed Arch Linux package, which builds out of the box.  The
package is built from this archive [2].

Then I cloned the git repo from here [3]. It has the tag
EVOLUTION_DATA_SERVER_3_2_2, which correspond to the archive
version [2].  I compared the tagged version with the archive, and
found that there were several differences (modified ChangeLog and
.sgml's and some missing files). After some poking around in the
Makefiles I found that the archive seems to be generated from git
using "make dist-xz".

But if I run "git clean -qdfx && ./autogen.sh --enable-gtk-doc &&
make dist-xz", and I get the following error:

make[2]: *** No rule to make target `../../addressbook/libegdbus/libegdbus-book.la', needed by `libebook-1.2.la'.  Stop.
make[2]: Leaving directory `/home/drizzd/src/evolution-data-server/addressbook/libebook'
make[1]: *** [distdir] Error 1

Note that without the git clean -qdfx, if I run autogen.sh for the
second time, I get a lot of messages like "configure.ac:1568:
required file `addressbook/libebook/Makefile.in' not found". But
the files do exist. They were generated by the previous runs of
autogen.sh. A cursory look at the build scripts did not reveal
anything obvious.

If I instead run "git clean -qdfx && ./autogen.sh && make"
everything builds fine. But the build scripts won't let me create
an archive without --enable-gtk-doc. And without an archive I
cannot use the Arch Linux package build script. In order to be able
to reproduce the bug and in the interest of time, I do not want to
introduce too many changes to the Arch Linux build process other
than the proposed patch itself.

I should probably try to patch the archive directly instead. But
it's such a waste that I cannot build directly from git. In my
opinion, source archives should not be part of a complex build
process that involves building the docs. The package maintainers
should build the docs themselves, or pre-built docs should be made
available for download, but without the source code. That way the
maintainer has to make sure that the package actually builds
directly from the unmodified source code straight out of git, and
it would be much easier for users like me to debug and test the
package.

What do you think I should do?

Best regards,
Clemens

[1] https://bugzilla.gnome.org/show_bug.cgi?id=661265
[2] http://ftp.gnome.org/pub/gnome/sources/evolution-data-server/3.2/evolution-data-server-3.2.2.tar.xz
[3] http://git.gnome.org/browse/evolution-data-server


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]