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

[PATCH] dynamically link swig runtime on windows (Can I commit this?)

From: Russell Yanofsky <rey4_at_columbia.edu>
Date: 2003-07-31 12:10:08 CEST

I was recently given commit access for the swig bindings, but I'd like to
check in some changes to the build generator. A patch is attached. Is it ok
for me to check this in?

Log Message:

Changed Visual Studio builds of SWIG bindings to dynamically link
with the SWIG runtime instead of statically linking with it.
(Makefile builds already do this). This is needed because the
SWIG runtime functions read and write global data. When static
linking is used each module gets its own incomplete copy of the
global data, now data is shared and accessible to all modules.

Also some other minor changes:
  - solution and workspace files list projects in alphabetical
    order instead of in random order
  - solution file no longer refers to non-existant __INSTALLER__

* build.conf
    new target: swig_runtime

* build/generator/msvc_dsp.ezt
* build/generator/vcnet_vcproj.ezt
    pass -c option to swig. new custom build step to generate
    swig runtime source

* build/generator/gen_vcnet_vcproj.py
    (Generator.write_project, Generator.write): changed to skip
      TargetExternal instances (like __INSTALLER__) completely.
      Before it was skipping the project files but still
      including listings in the solution files.

    (Generator.write): list projects in .sln file in alphabetical

* build/generator/gen_msvc_dsp.py
    (Generator.write): list projects in .dsw file in alphabetical

* build/generator/gen_base.py
    (SWIGLibrary.__init__): changed signature and moved some
      functionality into TargetSWIG.add_dependencies

    (SWIGRuntimeLibrary): new DependencyNode class

    (TargetSWIG.add_dependencies): changes for new SWIGLibrary
      constructor. Add swig library dependencies to tree under
      the swig library name, rather than SWIGLibrary instance
      for consistency with other libraries.

    (TargetSWIGRuntime): new Target class

* build/generator/gen_make.py
    (Generator.write): remove some special treatment of
      SWIGLibrary instances now that their dependencies are
      added to the dependency graph just like other libraries.

* build/generator/gen_win.py
    (Generator.write_project, Generator.adjust_win_depends):
      added code to handle writing project files for swig
      runtime libraries

* build/win32/gen_swig_runtime.bat:
    new batch script which generates swig runtime code for
    various languages

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Thu Jul 31 12:13:43 2003

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

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