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

Re: svn trunk r22841: FAIL (win32-xp VS2005)

From: Vlad Georgescu <vgeorgescu_at_gmail.com>
Date: 2007-01-03 15:38:28 CET

D.J. Heap wrote:
> On 1/2/07, D.J. Heap <djheap@gmail.com> wrote:
> [snip]
>> I agree with the above, but don't have time to look at right now so I
>> tweaked the buildbot to use --disable-shared until it's addressed.
>
>
> However, that doesn't appear to even build. Is --disable-shared
> supposed to be able to fully build and test everything or is it just
> for building the static libs?
>
> DJ
>

Oops. It's supposed to work just like pre-r22841 builds, except that
it's currently broken. The following patch should fix this:

[[[
Follow-up to r22841: Fix --disable-shared builds on Windows.

* build/generator/gen_base.py
  (TargetLib.__init__): If msvc-export is set but disable_shared is
  true, build the library statically.

* build/generator/gen_win.py
  (get_def_file): Don't create a .def file if disable_shared is true.
]]]

Index: build/generator/gen_base.py
===================================================================
--- build/generator/gen_base.py (revision 22879)
+++ build/generator/gen_base.py (working copy)
@@ -448,9 +448,11 @@
     # Is a library referencing symbols which are undefined at link time.
     self.undefined_lib_symbols = options.get('undefined-lib-symbols') == 'yes'
 
- self.msvc_static = options.get('msvc-static') == 'yes' # is a static lib
     self.msvc_fake = options.get('msvc-fake') == 'yes' # has fake target
     self.msvc_export = string.split(options.get('msvc-export', ''))
+ # Is a static lib
+ self.msvc_static = options.get('msvc-static') == 'yes' \
+ or (self.msvc_export and gen_obj.disable_shared)
 
 class TargetApacheMod(TargetLib):
 
Index: build/generator/gen_win.py
===================================================================
--- build/generator/gen_win.py (revision 22879)
+++ build/generator/gen_win.py (working copy)
@@ -498,7 +498,8 @@
       return self.get_output_dir(target)
 
   def get_def_file(self, target):
- if isinstance(target, gen_base.TargetLib) and target.msvc_export:
+ if isinstance(target, gen_base.TargetLib) and target.msvc_export \
+ and not self.disable_shared:
       return target.name + ".def"
     return None
 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jan 3 15:38:48 2007

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