monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] library-build progress report and request for help


From: Markus Schiltknecht
Subject: Re: [Monotone-devel] library-build progress report and request for help with botan
Date: Wed, 09 Apr 2008 22:02:13 +0200
User-agent: Mozilla-Thunderbird 2.0.0.9 (X11/20080109)

Hi,

I've finally got around playing with that branch again. Some remarks below.

Zack Weinberg wrote:
Monotone itself has been moved to
another subdirectory (currently named "monotone", but I could be
persuaded to rename it "src" or something like that).

+1 for naming it "src".

The top-level
configure script just saves all its arguments into a Makefile.  That
Makefile invokes the library configure scripts with --prefix set to a
subdirectory "libinst" of the build tree, then builds them and
installs them.  It then runs the monotone-subdirectory configure
script, telling it to look in "libinst" for its libraries.

Trying that setup, I've been puzzled about all the steps needed. I still don't get warm with the mixture of the configuration step and the actual building step. However, that might just be personal preference. Trying to build the whole thing, I've encountered the following problems:

* I've spent some time to figure out that I needed to run aclocal for every subdir. Only later on, I've noticed that there's an autogen.sh script which does that for me. However, as INSTALL still recommends running aclocal manually, that might entrap other users as well.

* If pcre's configure script fails after having created pcre/Makefile (for example due to missing config.h.in), a subsequent 'make pcre/Makefile' won't restart configure for pcre, because the Makefile is up-to-date. Maybe simply add more of the files there as dependencies, so that make reruns pcre's configure.

 * Botan's 'make install' complains about ownership problems:

install: cannot change ownership of `/home/markus/projects/monotone/build.nvm.library-build/libinst/share/doc/Botan-1.7.4/credits.txt': Operation not permitted

Do we really need to run 'make install' for these 3rdparty libraries? Having top-level 'make' recurse into all of subdirs running 'make install' every time seems expensive to me.

After having worked around these issues, I've been able to run 'make' and 'make install' in all of the subdirectories (lua, botan, pcre, netxx, idna and sqlite).


Don't even try building the monotone subdirectory yet.

People wanting to experiment may find the toplevel targets "make
<dir>/Makefile" and "make libinst/<dir>-stamp" of use.

Jup, even the -stamp targets are working.

Regards

Markus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]