[Boost-bugs] [Boost C++ Libraries] #1025: Install/stage on Windows with GCC doesn't copy DLLs.

Subject: [Boost-bugs] [Boost C++ Libraries] #1025: Install/stage on Windows with GCC doesn't copy DLLs.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-06-01 20:12:33


#1025: Install/stage on Windows with GCC doesn't copy DLLs.
------------------------------+---------------------------------------------
 Reporter: grafik | Owner:
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: build
  Version: release 1.34.0 | Severity: Showstopper
 Keywords: |
------------------------------+---------------------------------------------
 Doing a install/stage at the boost-root with either gcc-mingw, of gcc-
 cygwin fails to copy the DLLs for the built libraries. This is because the
 `gcc-linking-generator` in `tools/gcc.jam` strips out the DLL target which
 the install needs to tell when a DLL is created. Dave Abrahams explains
 that strip choice as:

 {{{
 # If more than one target was generated, throw out the
 # last one, which on windows just leaves the import
 # library. Most generators on windows simply don't accept
 # shared libraries as input, but being able to link
 # directly to a shared library without an import library
 # is an important capability of GCC. Therefore, we remove
 # the target after the action sees it so that dependent
 # targets don't try to link to both the import library and
 # the DLL.
 }}}

 I'm not sure which situation Dave has in mind but I changed the code to
 not throw out the DLL targets and tested building a variety of libraries,
 including the embeded Python example, and AFAICT both MinGW and Cygwin
 both deal fine with the DLL and import libs just fine. I attach a patch
 that reverts this one change. It was tested with gcc-mingw-3.4.5, gcc-
 cygwin-3.4.4, and msvc-8.0.

 We need Dave's go ahead for this one since he knows the context of the
 breaking change.

--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1025>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.


This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:55 UTC