Re: [Boost-bugs] [Boost C++ Libraries] #12365: fail to build under mingw

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #12365: fail to build under mingw
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-07-30 17:13:03


#12365: fail to build under mingw
-------------------------------+----------------------------
  Reporter: anonymous | Owner:
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: Building Boost
   Version: Boost 1.61.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+----------------------------

Comment (by anonymous):

 I'm having a similar issue building Boost (in my case with clang
 3.8.0-win64 and mingw-w64 x86_64-5.3.0-posix-seh-rt_v4-rev0 on Windows
 10). I'm still investigating, but the issues I've found so far that seem
 relevant here are:

 1. tools/build/bootstrap.bat invokes tools.build/src/engine/build.bat,
 which tries to guess the users toolset. One of the ways it does this is by
 testing if a particular executable file can be found on the users %PATH%
 using a function called Test_Path. The assumption is that Test_Path will
 set errorlevel 1 if the executable is not found, but this is not the case.
 In fact Test_Path will never set errorlevel 1. I have modified Test_Path
 locally as:
 {{{
 :Test_Path
 REM Tests for the given executable file presence in the directories in the
 PATH
 REM environment variable. Additionaly sets FOUND_PATH to the path of the
 REM found file.
 call :Clear_Error
 setlocal
 set test=%~$PATH:1
 call :Test_Empty %test%
 endlocal
 if errorlevel 1 (
     call :Clear_Error
     set FOUND_PATH=%~dp$PATH:1
     goto :eof)
 call :Set_Error
 goto :eof
 }}}
 which appears to resolve this issue but is probably not the optimal fix (I
 claim no expertise with regard to Windows batch files).

 2. tools/build/bootstrap.bat has a set of supported toolsets which it uses
 to build jam. It then invokes jam to build b2. jam has its own set of
 supported toolsets. tools/build/bootstrap.bat supports mingw (line 30).
 jam appears not to (tools/build/src/engine/build.jam).

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/12365#comment:1>
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:50:20 UTC