[Qbs] Unexpected behavior of MSVC generator
denis.shienkov at gmail.com
Sun Feb 17 19:10:32 CET 2019
«compiler» (like cl or javac) but converts some input to output using
qbs itself. How that custom rule would like?
But we speak about c/c++ :)
> What are pros?
Pros are than I can use then a generated 'native' project on hosts
without of QBS (just use that 'native' IDE && tools)! F.e. using a
'native' debugger and etc.
> For now you’re just saying that QBS behaves different from CMake.
Nono. I say that QBS's generator behavios is strange for me. Because I
expect that it will generate a 'native' project for a target tool.
17.02.2019 0:32, Иван Комиссаров пишет:
>> 16 февр. 2019 г., в 19:04, Denis Shienkov <denis.shienkov at gmail.com
>> <mailto:denis.shienkov at gmail.com>> написал(а):
>> Why is it a very challenging task?
>> It is enough just to parse the QBS project, to take a compiler flags,
>> defines and so on, and to create the MSVC project using that info.
>> And then the
>> Visual Studio will invoke all required stuff 'as usual' using own
> «compiler» (like cl or javac) but converts some input to output using
> qbs itself. How that custom rule would like?
>> Yes, of course, generating of the Qt-based project will cause some
>> (due to MOC and etc)... But for non-qt projects it should work.
>> PS: Besides, the Qt MSVC addon and the CMake solves it anyway... Why
>> QBS can't? :)
> It can. But when choosing 2 ways of doing same thing, you write down
> pros and cons and compare those ways. The cons are - it’s harder to
> implement the proper generator than the fake one (simply because
> «proper generator» will include the «fake» one for the case I
> mentioned above). What are pros?
>> > What’s the point of implementing a rule for cpp files directly in
>> the solution and not implementing it for other cases? I don’t see any
>> use cases.
>> I'm don't understand a bit, what do you mean here?
> What I am trying to tell is that current approach may not be perfect,
> but it works. Unless you can say what’s wrong with it. You need to
> describe what’s wrong and prove that it can’t be fixed due to the
> chosen approach. For now you’re just saying that QBS behaves different
> from CMake. Well, this is not a new information=))
>> UPD: I'm ask all this question, because I'm doubt: is it makes sense
>> tries to implement the generators (to spent a time) for a
>> "bare-metal" stuff... e.g. to generate the projects for IAR, Keil,
>> Atmel Studio and etc? Or QBS is dead, and we need to make tries to
>> use CMake for that cases (but I'm don't know and don't like CMake)?
>> It is a main dilemma! :)
> It’s open source now. If personally you need this feature, contribute it.
>> 16.02.2019 20:14, Иван Комиссаров пишет:
>>> I can comment. If you want a real generator, you should use cmake=)
>>> Being serious, it is not a recursion, it is a proxy - solution is the proxy for the IDE to call the build tool (which is QBS).
>>> Creating a «proper» solution that invokes compilers directly is a very challenging task… Imagine you have a custom (not the *.cpp -> *.o) rule for generating some files with a bunch of JS code. How are you going to invoke this code? Well, you probably would like to call QBS… But if you’re calling it for *some* cases why not call it in *all* cases and save some time?
>>> What’s the point of implementing a rule for cpp files directly in the solution and not implementing it for other cases? I don’t see any use cases.
>>>> 16 февр. 2019 г., в 16:10, Denis Shienkov<denis.shienkov at gmail.com> написал(а):
>>>> Hi all,
>>>> It was surprised for me, that a generated MSVC solution file has
>>>> a build commands which are calls the QBS to build the generated
>>>> MSVC solution... It is recursion!!! o_O
>>>> WTF? But it has not a sense!
>>>> If I want to build a project using the QBS, then I know that I
>>>> will use the QBS!
>>>> But when I want to generate the MSVC project, then I will expect
>>>> that the QBS will generate the 'native' MSVC solution, which I
>>>> will use in the Visual Studio IDE on a host without of the QBS!
>>>> Any comments?
>>>> Qbs mailing list
>>>> Qbs at qt-project.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Qbs