[Qbs] Why was protobuf.outputDir removed
Иван Комиссаров
abbapoh at gmail.com
Wed Sep 16 15:36:47 CEST 2020
As I said before, I have no objections to bring the property back.
Just add a test so we know why we need this property and add custom tags for the generated files to separate them from the other header files.
Ivan.
> 16 сент. 2020 г., в 08:27, Kai Dohmen via Qbs <qbs at qt-project.org> написал(а):
>
> Hello Ivan,
>
> the use-case of installation arises from encapsulating the proto files into a single library. I do this because then it is easier for me to use the proto-stuff in different applications.
> Since I started to use conan to track dependencies I needed to compile and install the static library for use in the consuming application.
> I would rather append the proto files to an products source files If there is a (non hacky) way to it (with conan),
>
> Kai
>
>
>
> Am Di., 15. Sept. 2020 um 09:41 Uhr schrieb Иван Комиссаров <abbapoh at gmail.com <mailto:abbapoh at gmail.com>>:
> Hello, Kai
>
> First of all, the property was not removed but was made «private» and is now called _outputDir. You can still override it or read it.
>
> The reason why it was removed is that I didn’t see valid use-cases for that.
>
> For example, to export include paths you should do something like that:
>
> StaticLibrary {
> files: [«a.cpp», «b.proto»]
> Depends { name: «protobuf.cpp» }
> Export {
> Depends { name: «protobuf.cpp» } // this should export protobuf.cpp properties, including cpp.IncludePath
> }
> }
>
> However, your second use-case (installation) is totally new to me and it seems that you need to read this property.
> Unless someone can suggest a better solution, feel free to upload a patch to return the property.
> You might also want to assign custom tags for generated files (e.g. «proto_hpp», «proto_cpp») to make filtering more fine-grained and avoid overlapping with other headers.
>
> Ivan
>
> > 15 сент. 2020 г., в 09:00, Kai Dohmen via Qbs <qbs at qt-project.org <mailto:qbs at qt-project.org>> написал(а):
> >
> > Hello,
> >
> > the subject states my Question.
> > Normally I create a static library from proto files. This static library can be linked into different applications. This really comes in handy when using conan.
> > But since protobuf.outputDir was removed I cannot set the Exported includePaths dir properly.
> > Furthermore when installing the generated header files I cannot use the Groups property installSourceBase to match the installed directory structure to the proto files ones.
> >
> > What is the right way of using proto files as a library? Should they get compiled or should they append to the depending products source files?
> >
> > Thanks,
> > Kai
> > _______________________________________________
> > Qbs mailing list
> > Qbs at qt-project.org <mailto:Qbs at qt-project.org>
> > https://lists.qt-project.org/listinfo/qbs <https://lists.qt-project.org/listinfo/qbs>
>
> _______________________________________________
> Qbs mailing list
> Qbs at qt-project.org
> https://lists.qt-project.org/listinfo/qbs
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/qbs/attachments/20200916/eeb2de99/attachment.html>
More information about the Qbs
mailing list