Re: [Development] Licensing of qtbase

2022-08-03 Thread Tino Pyssysalo
On 3.8.2022, 15.21, "Development on behalf of Benjamin TERRIER" 
mailto:development-boun...@qt-project.org> 
on behalf of b.terr...@gmail.com> wrote:

On Wed, 13 Jul 2022 at 13:05, Florian Bruhin 
mailto:m...@the-compiler.org>> wrote:

https://www.qt.io/product/features?hsLang=en#js-6-3 lets you see the
individual components of Qt and what license they are available as.

> That's some high level of FUD and BS.
> If I select LGPLv3, all Qt tools are greyed out (moc, qmake, Qt Creator, 
> etc.).
> Sure these tools are themselves not licensed under LGPLv3, but nothing 
> prevents them from being used for LGPLv3 projects.

Indeed. If using means running here, GPLv3 sets no limitations for running the 
unmodified version of the SW. Limitations are related to the modified SW. And 
GPLv3 is compatible with LGPLv3, but then the combination will be 
GPLv3-licensed.

I did not put these license details on the features page. Small clarification 
would not hurt.

> Ang given the text at the top of the page:
Please select a [...] license model, [...] programming language to see, what 
items are available for that selection.
> it will clearly make some people think that one cannot use these tools with 
> LGPLv3 projects.
> Especially because when selecting a language it will filter based on which 
> languages can be used with a tool, not which languages a tool is developed 
> with.

I agree this is a little bit counter-intuitive. In one place we talk about 
development licenses and in another place using the SW. I will try to clarify 
this.

--
Tino Pyssysalo
Maintainer of Qt features page
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-08-03 Thread Benjamin TERRIER
On Wed, 13 Jul 2022 at 13:05, Florian Bruhin  wrote:

>
> https://www.qt.io/product/features?hsLang=en#js-6-3 lets you see the
> individual components of Qt and what license they are available as.
>
>
That's some high level of FUD and BS.
If I select LGPLv3, all Qt tools are greyed out (moc, qmake, Qt Creator,
etc.).
Sure these tools are themselves not licensed under LGPLv3, but nothing
prevents them from being used for LGPLv3 projects.

Ang given the text at the top of the page:

> Please select a [...] license model, [...] programming language to see,
> what items are available for that selection.
>
it will clearly make some people think that one cannot use these tools with
LGPLv3 projects.
Especially because when selecting a language it will filter based on which
languages can be used with a tool, not which languages a tool is
developed with.

Anyway, I think the easiest way to get info about Qt license is
https://doc.qt.io/qt-6/licensing.html for general information and
https://doc.qt.io/qt-6/qtmodules.html#gpl-licensed-addons for checking
modules that are not available under LGPLv3.

BR
Benjamin
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-08-02 Thread Jörg Bornemann

On 7/16/22 12:00, Felix Crazzolara wrote:

I wanted now to write some CMake code to ensure that Qt is always and 
entirely linked dynamically. For that purpose, I intended to iterate 
through the target properties LINK_LIBRARIES and 
INTERFACE_LINK_LIBRARIES of Qt5::Widgets or Qt6::Widgets and check that 
all dependencies resolve to shared libraries eventually.


I have now two questions. First, is there some existing code in the Qt 
code base that does what I want already?


There is code for that as part of the .pri file generation, but it's not 
ready to be used outside of its scope.  See QtPriHelpers.cmake for details.


Secondly, I noticed that an interface dependency of Qt6::Widgets is 
Qt6::CoreQt6::Gui and if I check whether Qt6::CoreQt6::Gui is a target 
with "if (TARGET Qt::CoreQt6::Gui)", it turns out that it is not. This 
confused me since it doesn't seem like a valid library name to me. How 
can I resolve Qt6::CoreQt6::Gui to an absolute file path?


Qt6::CoreQt6::Gui looks wrong and should not appear as dependency.
Are you sure that this is not an artifact of your code that extracts the 
dependencies?



Cheers,

Joerg
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-07-16 Thread Felix Crazzolara
Hello everyone,

I wanted now to write some CMake code to ensure that Qt is always and
entirely linked dynamically. For that purpose, I intended to iterate
through the target properties LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES
of Qt5::Widgets or Qt6::Widgets and check that all dependencies resolve to
shared libraries eventually.

I have now two questions. First, is there some existing code in the Qt code
base that does what I want already?

Secondly, I noticed that an interface dependency of Qt6::Widgets is
Qt6::CoreQt6::Gui and if I check whether Qt6::CoreQt6::Gui is a target with
"if (TARGET Qt::CoreQt6::Gui)", it turns out that it is not. This confused
me since it doesn't seem like a valid library name to me. How can I resolve
Qt6::CoreQt6::Gui to an absolute file path?

Best regards,

Felix Crazzolara


On Wed, 13 Jul 2022 at 14:00, Felix Crazzolara 
wrote:

> Thank you very much for your explanations Allan and Florian.
>
> Cheers,
>
> Felix
>
> On Wed, 13 Jul 2022 at 13:32, Allan Sandfeld Jensen 
> wrote:
>
>> On Mittwoch, 13. Juli 2022 12:14:27 CEST Felix Crazzolara wrote:
>> > Dear everyone,
>> >
>> > I would like to use Qt for a personal project. In my project, I use a
>> > relatively small part of Qt and I think that the components of QtBase
>> here
>> > https://github.com/qt/qtbase
>> > suffice for my application.
>> >
>> > I read about the Qt licensing model on the official website. What
>> surprised
>> > me now to see, is that there are quite a few licenses in the LICENSES
>> > folder in the repository referred to above. Among them is for example an
>> > MIT license.
>> >
>> > How can I understand this? Is the QtBase component of Qt itself licensed
>> > with an MIT license? Can I choose which license in the LICENSES folder
>> to
>> > use if I restrict myself to QtBase?
>> >
>> No, you can only choose between LGPLv3, GPLv2 or commercial, you have to
>> be
>> compatible with one of those. The MIT license is a license for components
>> Qt
>> itself uses, and shouldn't affect you.
>>
>> Best regards
>> Allan
>>
>>
>>
>>
>>
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-07-13 Thread Felix Crazzolara
Thank you very much for your explanations Allan and Florian.

Cheers,

Felix

On Wed, 13 Jul 2022 at 13:32, Allan Sandfeld Jensen 
wrote:

> On Mittwoch, 13. Juli 2022 12:14:27 CEST Felix Crazzolara wrote:
> > Dear everyone,
> >
> > I would like to use Qt for a personal project. In my project, I use a
> > relatively small part of Qt and I think that the components of QtBase
> here
> > https://github.com/qt/qtbase
> > suffice for my application.
> >
> > I read about the Qt licensing model on the official website. What
> surprised
> > me now to see, is that there are quite a few licenses in the LICENSES
> > folder in the repository referred to above. Among them is for example an
> > MIT license.
> >
> > How can I understand this? Is the QtBase component of Qt itself licensed
> > with an MIT license? Can I choose which license in the LICENSES folder to
> > use if I restrict myself to QtBase?
> >
> No, you can only choose between LGPLv3, GPLv2 or commercial, you have to
> be
> compatible with one of those. The MIT license is a license for components
> Qt
> itself uses, and shouldn't affect you.
>
> Best regards
> Allan
>
>
>
>
>
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-07-13 Thread Allan Sandfeld Jensen
On Mittwoch, 13. Juli 2022 12:14:27 CEST Felix Crazzolara wrote:
> Dear everyone,
> 
> I would like to use Qt for a personal project. In my project, I use a
> relatively small part of Qt and I think that the components of QtBase here
> https://github.com/qt/qtbase
> suffice for my application.
> 
> I read about the Qt licensing model on the official website. What surprised
> me now to see, is that there are quite a few licenses in the LICENSES
> folder in the repository referred to above. Among them is for example an
> MIT license.
> 
> How can I understand this? Is the QtBase component of Qt itself licensed
> with an MIT license? Can I choose which license in the LICENSES folder to
> use if I restrict myself to QtBase?
> 
No, you can only choose between LGPLv3, GPLv2 or commercial, you have to be 
compatible with one of those. The MIT license is a license for components Qt 
itself uses, and shouldn't affect you.

Best regards
Allan




___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


Re: [Development] Licensing of qtbase

2022-07-13 Thread Florian Bruhin
Hi,

(The usual "I am not a lawyer" disclaimer applies.)

On Wed, Jul 13, 2022 at 12:14:27PM +0200, Felix Crazzolara wrote:
> I would like to use Qt for a personal project. In my project, I use a
> relatively small part of Qt and I think that the components of QtBase here
> https://github.com/qt/qtbase suffice for my application.

If you don't redistribute your project, you don't need to care much
about licenses.

If you do redistribute it, do so under a license compatible with the
GPLv3, and you will be fine.

> I read about the Qt licensing model on the official website. What surprised
> me now to see, is that there are quite a few licenses in the LICENSES
> folder in the repository referred to above. Among them is for example an
> MIT license.
> 
> How can I understand this? Is the QtBase component of Qt itself licensed
> with an MIT license? Can I choose which license in the LICENSES folder to
> use if I restrict myself to QtBase?

The Licenses folder contains *all* licenses used in the project,
including those of third-party components.

The license which actually applies is specified on a per-file level,
e.g. here: https://github.com/qt/qtbase/blob/dev/src/corelib/io/qurl.cpp#L3

https://www.qt.io/product/features?hsLang=en#js-6-3 lets you see the
individual components of Qt and what license they are available as.

Most of Qt is available under the LGPL (or commercial), some of it under
the GPL (or commercial). For qtbase, I *think* it should all be LGPL
even, but don't quote me on that.

For a quick overview, here is what I found in the Qt 6.4 qtbase repo, by
running this and then some manual editing:

$ git grep -ho "SPDX-License-Identifier: .*" | sort | uniq -c | sort -nr
   3478 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR 
GPL-2.0-only OR GPL-3.0-only
   1797 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH 
Qt-GPL-exception-1.0
   1591 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
(those seem to be code snippets in the documentation)
359 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR 
GFDL-1.3-no-invariants-only
(example code apparently?)
 46 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
  3 SPDX-License-Identifier: MIT
  1 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR
  1 SPDX-License-Identifier: BSL-1.0
  1 SPDX-License-Identifier: BSD-3-Clause
  1 SPDX-License-Identifier: Apache-2.0 OR MIT
  1 SPDX-License-Identifier: Apache-2.0

For an opensource project, even more so for a small personal one, I'd
recommend licensing it under the GPLv3 and you should be all set.

Florian

-- 
m...@the-compiler.org | https://www.qutebrowser.org 
   https://bruhin.software/ | https://github.com/sponsors/The-Compiler/
   GPG: 916E B0C8 FD55 A072 | https://the-compiler.org/pubkey.asc
 I love long mails! | https://email.is-not-s.ms/


signature.asc
Description: PGP signature
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


[Development] Licensing of qtbase

2022-07-13 Thread Felix Crazzolara
Dear everyone,

I would like to use Qt for a personal project. In my project, I use a
relatively small part of Qt and I think that the components of QtBase here
https://github.com/qt/qtbase
suffice for my application.

I read about the Qt licensing model on the official website. What surprised
me now to see, is that there are quite a few licenses in the LICENSES
folder in the repository referred to above. Among them is for example an
MIT license.

How can I understand this? Is the QtBase component of Qt itself licensed
with an MIT license? Can I choose which license in the LICENSES folder to
use if I restrict myself to QtBase?

Sincerely,

Felix Crazzolara
___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development