Boost logo

Boost-Build :

From: jwulp_at_[hidden]
Date: 2006-02-15 10:33:00


First of all, thanks a lot for your response. I'll try to provide you with more
information. My Jamfile.v2 contains:

project squadt
  : source-location ../
  : build-dir $(BUILD_TOP)
  : default-build debug
  : requirements
    <include>../libraries ;

local wx_cppflags = [ SHELL "$(WX_CONFIG) --cxxflags" ] ;
local wx_ldflags = [ SHELL "$(WX_CONFIG) --libs core base adv net" ] ;

exe squadt :
       squadt.cpp
       specification.cpp
       project_manager.cpp
       settings_manager.cpp
       tool_manager.cpp
       tool_executor.cpp
       tool.cpp
       logger.cpp
       process.cpp
       gui_new_specification.cpp
       gui_project_overview.cpp
       gui_resources.cpp
       gui_specification_properties.cpp
       /libraries/md5pp//md5pp
       /libraries/transport//transport
       /libraries/xml2pp//xml_text_reader
       /boost/filesystem//boost_filesystem
      :<cxxflags>"$(wx_cppflags)"
       <linkflags>"$(wx_ldflags)" ;

Where $(WX_CONFIG) expands to the absolute path to wx-config. A similar
construction is used to get the -I/usr/include/libxml2. Namely through calling
xml2-config in a similar way as wx-config, using SHELL. It is a
usage_requirement in another Jamfile.

All those variables: xml2_cppflags and wx_cppflags expand into something that
ends in a newline. But the command $(WX_CONFIG) --cxxflags returns something
that does not end in a newline. The newlines break up the command into three
pieces in the example below. I do not understand why the newlines are there.

Jeroen

On Wed, Feb 15, 2006 at 04:55:30PM +0300, Vladimir Prus wrote:
> On Wednesday 15 February 2006 12:38, jwulp_at_[hidden] wrote:
>
> > local wx_cppflags = [ SHELL "wx_config --cppflags" ] ;
> >
> > The problem I am having with this, is that although the variable is
> > substituted it does not become part of the command if I add
> > <cxxflags>"$(wx_cppflags)" :
> >
> > gcc.compile.c++
> > /trunk/src/squadt/bin/gcc/debug/specification.o
> > g++: no input files
> > /bin/sh: line 2: -I/usr/lib/wx/include/gtk2-unicode-debug-2.6: No such file
> > or directory
> > /bin/sh: line 3: -O0: command not found
> >
> > "g++" -ftemplate-depth-100 -I/usr/include/libxml2
> > -I/usr/lib/wx/include/gtk2-unicode-debug-2.6 -I/usr/include/wx-2.6
>
> Hi Jeroen!
>
> It seems like the problem is not that "variable does not become part of the
> command". I see -I/usr/include/libxml2 above. But, from the further error
> messages it looks like there's newline after "-I/usr/include/libxml2". How is
> that include added? Can you show me the code?
>
> - Volodya
>


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk