You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Alexander Mueller <Xe...@web.de> on 2009/02/25 14:49:31 UTC
[PATCH] Modify "gen-make.py", so it will link against the static
version of Berkeley DB
Right now Subversion will always try to link against the static version
of Berkeley DB. Apr-util can be configured to link against the static
library but finally we end up with an executable that has both the
contents of the static library AND the links against the dll.
So, here is a patch the adds a new option "--enable-berkeley-db-static"
to the generator.
I have created two patches, one for the 1.5.x branch, the other one for
the 1.6.x branch.
Hope you like it. If not, please feeback.
Alex
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1227111
Re: [PATCH] Modify "gen-make.py", so it will link against the
static version of Berkeley DB
Posted by "Hyrum K. Wright" <hy...@mail.utexas.edu>.
On Feb 25, 2009, at 8:49 AM, Alexander Mueller wrote:
> Right now Subversion will always try to link against the static
> version
> of Berkeley DB. Apr-util can be configured to link against the static
> library but finally we end up with an executable that has both the
> contents of the static library AND the links against the dll.
>
> So, here is a patch the adds a new option "--enable-berkeley-db-
> static"
> to the generator.
>
> I have created two patches, one for the 1.5.x branch, the other one
> for
> the 1.6.x branch.
I haven't reviewed the patch, but a general comment on your
submission. You only need to create one patch, against trunk. From
there, changes can be nominated and backported into the appropriate
release branch(es). Also, please include a suitably written log
message, as mentioned in the patch guidelines: http://subversion.tigris.org/hacking.html#patches
-Hyrum
>
>
> Hope you like it. If not, please feeback.
>
> Alex
>
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1227111Index
> : build/generator/gen_win.py
> ===================================================================
> --- build/generator/gen_win.py (Revision 36127)
> +++ build/generator/gen_win.py (Arbeitskopie)
> @@ -39,6 +39,7 @@
> self.serf_path = None
> self.serf_lib = None
> self.bdb_path = 'db4-win32'
> + self.bdb_static = False
> self.without_neon = False
> self.neon_path = 'neon'
> self.neon_ver = 25005
> @@ -69,6 +70,8 @@
> for opt, val in options:
> if opt == '--with-berkeley-db':
> self.bdb_path = val
> + elif opt == '--enable-berkeley-db-static':
> + self.bdb_static = 1
> elif opt == '--with-apr':
> self.apr_path = val
> elif opt == '--with-apr-util':
> @@ -144,6 +147,8 @@
> "Find the Berkeley DB library and version"
> for ver in ("47", "46", "45", "44", "43", "42", "41", "40"):
> lib = "libdb" + ver
> + if self.bdb_static:
> + lib += "s"
> path = os.path.join(self.bdb_path, "lib")
> if os.path.exists(os.path.join(path, lib + ".lib")):
> self.bdb_lib = lib
> Index: gen-make.py
> ===================================================================
> --- gen-make.py (Revision 36127)
> +++ gen-make.py (Arbeitskopie)
> @@ -169,6 +169,9 @@
> print " --enable-bdb-in-apr-util"
> print " configure APR-Util to use Berkeley DB"
> print
> + print " --enable-berkeley-db-static"
> + print " link against the static Berkeley DB library"
> + print
> print " --enable-ml"
> print " enable use of ML assembler with zlib"
> print
> @@ -220,6 +223,7 @@
> 'enable-nls',
> 'enable-bdb-in-apr-util',
> 'enable-ml',
> + 'enable-berkeley-db-static',
> 'disable-shared',
> 'installed-libs=',
> 'vsnet-version=',
> Index: build/generator/gen_win.py
> ===================================================================
> --- build/generator/gen_win.py (Revision 36127)
> +++ build/generator/gen_win.py (Arbeitskopie)
> @@ -43,6 +43,7 @@
> self.serf_path = None
> self.serf_lib = None
> self.bdb_path = 'db4-win32'
> + self.bdb_static = False
> self.without_neon = False
> self.neon_path = 'neon'
> self.neon_ver = 25005
> @@ -76,6 +77,8 @@
> for opt, val in options:
> if opt == '--with-berkeley-db':
> self.bdb_path = val
> + elif opt == '--enable-berkeley-db-static':
> + self.bdb_static = 1
> elif opt == '--with-apr':
> self.apr_path = val
> elif opt == '--with-apr-util':
> @@ -153,6 +156,8 @@
> "Find the Berkeley DB library and version"
> for ver in ("47", "46", "45", "44", "43", "42", "41", "40"):
> lib = "libdb" + ver
> + if self.bdb_static:
> + lib += "s"
> path = os.path.join(self.bdb_path, "lib")
> if os.path.exists(os.path.join(path, lib + ".lib")):
> self.bdb_lib = lib
> Index: gen-make.py
> ===================================================================
> --- gen-make.py (Revision 36127)
> +++ gen-make.py (Arbeitskopie)
> @@ -175,6 +175,9 @@
> print(" --enable-bdb-in-apr-util")
> print(" configure APR-Util to use Berkeley DB")
> print("")
> + print " --enable-berkeley-db-static"
> + print " link against the static Berkeley DB library"
> + print("")
> print(" --enable-ml")
> print(" enable use of ML assembler with zlib")
> print("")
> @@ -231,6 +234,7 @@
> 'enable-nls',
> 'enable-bdb-in-apr-util',
> 'enable-ml',
> + 'enable-berkeley-db-static',
> 'disable-shared',
> 'installed-libs=',
> 'vsnet-version=',
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1227132