Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-01-22 01:46:48


Felix E. Klee wrote:

>>> hello_world_widget.ui -o
>>> bin/gcc/debug/main-target-hello/hello_world_widget.h
>>
>>I see the problem now. The reason is that Dave has fix a bug in Jam
>>recently, and I have not updated qt.jam: in contained a workaround for it.
>>Please try again, with up-to-date bjam and Boost.Build.
>
>
> Thanks, it works fine now. Just one minor issue, concerning that hello world
> applet: resizing it feels kind of weird because the label and the button are
> not resized automatically. This can easily be fixed by letting them be
> managed by a layout: just select the main window in Designer and click on the
> "Lay Out Vertically" button.

Done. I've actually tried that more than once, but when one selects all both
label and button and applies the layout, it does not look anyway nice. Setting
layout on main windows is indeed OK. Thanks.

>>>BTW, once you have that fixed, could you please make the extension of the
>>>files generated by the uic customizable? I really prefer "h" to "hpp" and
>>>some people might prefer eg. "cc" to "cpp".
>>
>>I've no problem changing suffix for headers that UIC generates. In fact,
>>it's specified on line 36 of qt.jam. However, I'm not sure what our policy
>>should be. Do we allow to customize all extensions?
>
>
> What do you mean by *all*? Do you really mean all extensions used by Boost
> Build (eg. the user could specify that "xyz" should be added to the list of
> extensions for object files)? This might be nice to have, but maybe it's not
> worth the effort. In addition, we would need a rule so that programs like uic
> can decide which extension to use when several extensions for the same file
> type are specified.

The mechanism today is:
1. When Boost.Build tries to understand the type of a target, it looks through
a list of several suffixes. For example, both "cpp" and "cxx" might be allowed.
2. When a target of certain type is created, one one suffix is used.

I'm not sure that it's reasonable to change suffix depending on tool that
generates file. IOW, if headers are produces by two tools, I don't think
it's reasonable to have "h" suffix for one tool and "hpp" for another.

>>Or would it be better
>>to say that UIC generates *target* types CPP and H and use default
>>extension for that type.
>
>
> And what are those default extensions? If they are customizable then I'm fine
> with that solution.

They were not customizable until 5 mins ago. But now:
1. Edit new/user-config.jam or create new file "user-config.jam" in your home dir

2. Add

import type ;
type.change-generated-target-suffix H : : hpp ;

After that, UIC will generate header with the "hpp" extension.

Actually, it's possible to change extension for uic only:

type.change-generated-target-suffix UIC_H : : hpp ;

Is that sufficient?

- 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