22.11.2017 07:58, Jake Petroules пишет:
I took a quick look and:

- protobuf module - there's actually an open issue for this 
(https://bugreports.qt.io/browse/QBS-563) so maybe you could take ownership ;)
I created modules protobuf and cuda for building Caffe-Framework on QBS. Since I'm developing only C++/C, I'm not ready to take responsibility for the protobuf-generation for Python and Java. But I'm ready to provide an example (if of course you are interested) of building Caffe-Framework, so your can look at the work of modules protobuf and cuda.  It only takes me awhile to do it.

- cuda, gsoap... potentially useful, but I'm not that familiar with them
Indeed, module cuda needs further work. It is necessary to refine some points, for example, replace "args.push ('- std = c ++ 11')" with a more general instruction. Nevertheless, the module is quite workable, it can probably be used as an example. The module gsoap - is my first attempt at creating modules for QBS. The gsoap generator has a rather complicated situation with the generation of namespaces. Therefore, I would not recommend this module for use, it needs serious revision

- libs/... good, but set up in a way that seems fairly specific to your system.
In fact, it's just an agreement of the development team, which will be located some of the libraries used in the development process. On my previous work we supported about 10 OS (not the most recent versions - the billing primarily values stability). Therefore, there was such an arrangement: to place the relevant topical libraries in /opt.
This approach proved to be quite viable on Linux and WIndows, for example:

LibModule {
    id: opencv
    version: "3.0.x"
    prefix: "/opt/opencv"
    Properties {
        condition: qbs.targetOS.contains("windows")
                   && qbs.toolchain && qbs.toolchain.contains("mingw")
        prefix: "c:/opt/opencv"
        libSuffix: "/x86/mingw/lib"
    }
}

But system libraries can also be used. For this, there is the useSystem flag.

Could be useful if made more general
I do not really know which way to move here. If you give recommendations (ideas how to do it), then I will try to implement them.


I'm curious about your need for the functions in GccUtl. Why do you need the 
full path to libstdc++.a?
I do not need a path to the libstdc++.a :) But I need a path to the library libstdc++.so.6, provided that used the not system compiler. For example, I use /opt/gcc/5.4.0 and the system compiler gcc has version 4.8. Versions of the library  libstdc++.so.6 are incompatible with them.

And why gcc-ar instead of ar?
The reason is the same - incompatibility of compilers. This does not always manifest itself, but I has already stepped on these rakes.
It's possible we might want to make this configurable in Qbs, since there's an 
llvm-ar as well and there's presumably reasons a user might want to use the 
toolchain archiver vs the system archiver (same with the assembler).

On Nov 21, 2017, at 10:26 AM, Карелин Павел <hka...@yandex.ru> wrote:



21.11.2017 20:03, Jake Petroules пишет:
Hi Pavel,

As the author and copyright holder, you're free to use whatever license you 
want. MIT is certainly a good choice.
Ok, this is great!

However, depending on the kind of functionality your modules provide, you may 
even like to upstream them to the Qbs project for inclusion in the official 
release. Perhaps you could upload the modules and we can take a look and see if 
it's a fit?
Xm, I do not think that you will find in my modules that it is really valuable 
:)  These are just small utilities. I did not intend to publish them, but so 
were the circumstances.
The modules are attached.

--
Pavel.

P.S.
I work in the Russian-language segment, so all comments are in Russian. If an 
incredible thing happens, and you like something, then you are ready to make 
explanations in English.

Cheers.

On Nov 21, 2017, at 3:10 AM, Карелин Павел <hka...@yandex.ru> wrote:

Hi, guys!

I wrote several modules that slightly extend the functionality of QBS. I want 
to place them on GitHub, for using their in both open source and commercial 
projects. Under what license should I place my modules?
Can I use a MIT license?

--
BR, Pavel Karelin


_______________________________________________
Qbs mailing list
Qbs@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs
<QbsExt.tar.gz>

_______________________________________________
Qbs mailing list
Qbs@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs

Reply via email to