Hi Sandro,

On Fri, Dec 13, 2024 at 03:51:58PM +0100, Hefee wrote:
> I think there are also some candidates, that use qt6-base-dev-tools, as they 
> are do not need all the other parts of qt6-base-dev to get installed, because 
> they simply do not want to compile code, but just need information where to 
> find a qt resources. 
> One example would be I write a QML app run by python. To get the list of QML 
> dependencies I use dh_qmldeps. and dh_qmldeps only needs to know the path 
> where to find the qml modules by execute qtpaths.

This                                       ^^^^^^^ is exactly the case
where qt6-base-dev-tools is insufficient as qtpaths is the thing that is
architecture-dependent and whatever you depend on to get qtpaths must
not be M-A:foreign. To make matters worse, any package that uses
qtpaths6 cannot be M-A:foreign either as it inherits the property of
being architecture-dependent.

> Maybe there are more use cases for other binaries in Python code.

Probably.

> That's why I say, that dev-tools should be fine for packages to depend on.

Your example tells otherwise.

> IMO I recommend to do this:
> create qtpaths6 (any:same) and qtpaths6-bin(any:foreign) like for qmake6.

This much technically makes sense for cross building, but I am not
entirely convinced about using many small packages, because the Qt stack
has a web of dependencies, so in most practical situations I end up
with a pile of stuff. Whilst saving space is nice, I don't see the use
case for development tools.

> create dev-tools-config(arch:same) move everything from qmake6 except  
> usr/bin/

This makes sense in principle as qtpaths6 will need to depend on
dev-tools-config (<- this should probably carry "qt" somehwere in the
name).

> rename qt6-base-dev-tools to qt6-base-dev-bin + provides and add qtpaths6.

Can you elaborate what you mean here precisely? This is lacking slightly
too many details for me to fill in the gaps.

When I suggested renaming qt6-base-dev-tools to qt6-base-dev-bin, the
point of the exercise was to actively break all users of
qt6-base-dev-tools such that each of them would require action
transitioning its dependency to whatever was really meant there.

Helmut

Reply via email to