Re: [Boost-bugs] [Boost C++ Libraries] #9051: jam build system refuses to work on windows, won't build on mingw-w64

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9051: jam build system refuses to work on windows, won't build on mingw-w64
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-04-03 05:52:19


#9051: jam build system refuses to work on windows, won't build on mingw-w64
-------------------------------+----------------------------
  Reporter: jmichae3@… | Owner:
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: Building Boost
   Version: Boost 1.54.0 | Severity: Showstopper
Resolution: | Keywords:
-------------------------------+----------------------------

Comment (by jmichae3@…):

 it's been a while, my guess was it is the .jam file extension that it not
 recognized.
 found bjam.exe
 however, due to multiple problems with the batch file used for the build
 with 1.55.0, it refuses again to build in either MSYS+mingw-w64 or mingw.
 just following the directions. there is a .bat file for this, but
 apparently there needs to be some better skills in writing one. providing
 a .bat and a .cmd file would be better - the .bat would work for DOS
 compilers, and the .cmd would work for windows. the .cmd shell has a LOT
 more features like

 {{{
 if condition (
 ) else (
 )
 if condition (
 )

 }}}
 like

 {{{
 if /i @%somevar%@ neq @--help@ (
 echo help text
 ) else (
 )

 }}}

 rem this processes the whole dir tree of cpp files in 5 lines

 {{{
 for /f %%x in ('dir/s/b d:\projects\boost_1_55_0\*.cpp') do (
     rem %%~fx is the full file path
     %CC% %CCOPTS% -o %%~dpx%%~nx.o %%~fx
 )

 }}}
 to do string extraction:

 {{{
 rem remove double quotes
 set arg=%1
 rem this works like AND
 if @^"@==@%arg:~-1%@ if @^"@==@%arg:~0,1%@ set arg=%arg:1,-1%


 }}}
 and note that if anything has spaces in a filepath, surrounding it with
 double quotes will solve that problem. like "%%~fx"

 to get help with the commands try adding /? to the command
 like

 {{{
 for /?
 set /?

 }}}

 (that one is a wealth of info)

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9051#comment:3>
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:15 UTC