[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [TSVN] Subversion DLLs and TortoiseSVN

From: SteveKing <steveking_at_gmx.ch>
Date: 2005-03-07 17:43:07 CET

Steve Dwire wrote:
> I wanted to help with the GUI development for TortoiseSVN, but getting
> all of the core Subversion code and all of its dependencies set up was
> just a bit too much for me to handle right now for just a GUI change. I

What were the problems you had? Is the src/bild.txt file not enough?

> was about to suggest on the TortoiseSVN list that the TortoiseSVN shell
> simply use the Subversion DLLs instead of having to compile the
> libraries all over again into the TortoiseSVN application. But then, I
> did a sanity check in my “…\Program Files\Subversion” directory and
> realized that the Subversion installer doesn’t actually include DLL files.

Subversion can't be built as dll's right now.

> Here’s where I think a “whole product” manager would step in and ask the
> question…
> Would it be a Good Thing for the default Subversion install on Windows
> to install and register DLLs rather than having the libraries statically
> compiled into the .exe files? If not, why not? If so, then would it
> make sense for TortoiseSVN to default to using those libraries? Or at
> least be able to compile that way so folks like me could help with the
> GUI without having to fight with getting the Subversion project and all
> its dependencies set up?

No. TSVN (or better: I) would never use the Subversion dll installed by
another client. The reason is simple: you can't be sure that it will work!
- dll's compiled with VS.NET are usually incompatible with dll's
compiled with VC6. Well, they might seem to work, but there are many
memory allocation problems due to the different VC-runtimes used.
- I remember the Subversion installer once installed broken iconv
modules. So one broken installer could break all other clients too!
- Subversion uses the default iconv library. TSVN has to patch these
because the default ones use the environment variable APR_ICONV_PATH to
locate the *.so files. Again here's the problem with VC6<->VS.NET which
makes those incompatible. Also, the patched version TSVN uses is
slightly faster.
- Even MS recommends to _NOT_ install the VC runtime dll's in the SYSTEM
directory. And without the patched version of iconv this would have to
be done since TSVN has a shell extension which is started by explorer,
i.e. _not_ from the TSVN installation folder!


   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Mon Mar 7 17:44:54 2005

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.