I successfully built subversion on many linux systems without using berkeley db and apache2. I think many people don't need any repository/server functionality on their machines because they connect to a server anyway and therefore just need svn client capabilities. I suggest to make the use of berkeley-db and the python-bindings optional for faster compile times, so something like: USE="-berkdb -python -apache2" emerge subversion should imho end in a slick and fast subversion install without any unnecessary overhead. All that needs to be done is to check for the USE flags berkdb, python and apache2 (already done in 0.21.0-r1) and act accordingly. What do you think? Reproducible: Always Steps to Reproduce: 1. 2. 3.
hm... what about a local USE flag "clientonly" or something like that?
i am quite new to gentoo, i thought i am only allowed to use official USE flags like i did in my last post. Now you seem to mean that adding a custom USE flag to the svn-package works too, i didn't know that. Of course a USE="clientonly" line is easier to type and to remember, but how is the user supposed to know that this flag exists? is there some emerge option that shows the optional flags like './configure --help' does? would be a nice feature for emerge if it doesn't exist yet. I like the idea of the simple flag, but i wonder how it's going to be documented.
Have a look at /usr/portage/profiles/use.local.desc - there are the currently used local USE flags. And your worries how the user should be noticed - I see no difference between telling him 'type USE="clientonly" emerge foobar' or 'USE="-this -that" emerge foobar'. I have to admit that I'm not familiar with this ebuild (and have never used subversion), if these options (ruby, apache2, berkdb support) can be switched on and off as you like, it's of course A Good Thing (tm) to have this controlled by the normal USE flags. Perhaps I just misunderstood your comment, it sounded a bit like "if we have this special combination of USE flags, let's build only the client, else do the normal build".
I actually meant that the ebuild should check for the USE="-berkdb ..." flags, but it currently doesn't, it only checks for an installed apache2 server and assumes that everybody wants/needs bdb and python bindings. If the checks for the standard USE flags were made in the ebuild an experienced gentoo-user would be able to switch off the stuff he doesn't want - that was what i tried to say. Anyway - i'd like to vote for your "clientonly" flag idea. Whatever flag(s) is/are going to be supported is up the maintainer of the subversion.ebuild, as this is just a suggestion for a useful (at least for me) feature. Let us wait what he has to say about that, afaik he's on holiday now ;)
I've been away on holiday, but I will try to implement it in the comming week, together with the new subversion version. (I'll not use a local flag as db and python should work)
I've just committed the new subversion ebuild that has these features. Note that if you have apache2 installed the apache2 useflag must be set for subversion to work. Also the python bindings do not work without berkdb, so a client-only install can be gotten by USE="-berkdb"
client only build of subversion still requires apr and apr-util... imo, this is not required...