Hi everyone,

I'm currently working on porting the following three FreeCAD
dependencies:

PySide6: Python Qt bindings for Qt 6
PySide6-tools: PySide6 development tools
Shiboken6: Python binding generator for C++ libraries

Since their sources are provided as a single tarball, I think they
should be ported as sub-packages of one port with MULTI_PACKAGES.
However this is the first time I'm trying to use this feature and I'm
struggling to make it work. I initially made a separate port for each of
them by adapting ${WRKSRC} so that I could tell their *_DEPENDS,
WANTLIBs and PLISTs apart. Now that all three ports are finished, I've
merged them into one and suffixed their specific COMMENT, WANTLIB and
{LIB,RUN}_DEPENDS accordingly with a sub-package name. 

The problem is that the PySide6 (-main) sub-package depends on the
SHARED_LIBS installed by the Shiboken6 (-shiboken) sub-package, which of
course is throwing me an error. I know that library interdependencies
between sub-packages are possible since bsd.port.mk(5) mentions the
following:

> ... any LIB_DEPENDS-sub that references the current port will be
> ignored as a build dependency, in order to avoid recursion. ...

So how can I make this work? Is it possible to have a sub-package depend
on another sub-package SHARED_LIBS? FreeBSD has separate ports for each
of these dependencies[1][2][3], but for example the Arch Linux port
seems to be only one with multiple packages[4].

Another issue that I'm having is that the Shiboken6 port installs both
libraries and a Python module, so I'm not sure if this should be split
as well. What is the convention in this kind of case?

Lastly, when running 'make port-lib-depends-check' for both Shiboken6
and PySide6-tools, I'm getting a warning like the following:

> Missing lib: clang.8 (/usr/local/bin/shiboken6) (NOT REACHABLE)

I think this is due to clang being a runtime dependency for this ports.
I've had a similar issue in the past with another port and, if I
remember correctly, this was due to the library not being present in
LIB_DEPENDS. However here I've tried adding devel/llvm/13 to LIB_DEPENDS
and using the lang/clang module and I'm still getting the error. Any
idea what could be causing this?

Apologies in advance for the many questions. I've attached both the
combined port and the individual ones in case anyone wants to check them
out. I'd be very grateful for any guidance or feedback anyone could
provide.

Thank you.

Kind regards,
Johannes Thyssen Tishman

[1] https://github.com/freebsd/freebsd-ports/tree/main/devel/pyside6
[2] https://github.com/freebsd/freebsd-ports/tree/main/devel/pyside6-tools
[3] https://github.com/freebsd/freebsd-ports/tree/main/devel/shiboken6
[4] 
https://gitlab.archlinux.org/archlinux/packaging/packages/pyside6/-/blob/main/PKGBUILD?ref_type=heads

Attachment: individual.tar.gz
Description: GNU Zip compressed data

Attachment: combined.tar.gz
Description: GNU Zip compressed data



Reply via email to