Re: git: ea45a9a53499 - main - cad/PrusaSlicer: Mark BROKEN

From: Fernando_Apesteguía <fernando.apesteguia_at_gmail.com>
Date: Thu, 07 Mar 2024 11:25:07 UTC
On Thu, Mar 7, 2024 at 7:54 AM Loïc Bartoletti <lbartoletti@tuxfamily.org>
wrote:

> Hi,
>
> I haven't looked at exactly what the problem is here, but just in case,
> you should know that CGAL is header only (well, you still need to
> install boost), but that you can very well use the correct version of
> CGAL (e.g. 5.6.0) if it's not in the ports; that's what I do for
> databases/sfcgal
>

Yes, I know. That is one of the "problems".
Installing header files rarely fails.
It is when consumers include those headers when the problems arise.
In this case though, it seems that math/cgal has a test suite (according to
the CMakeLists.txt)
That test suite, if enabled, should detect the issue.

On the other hand, with a quick test, latest math/cgal (5.6.1) also makes
cad/PrusaSlicer build fail with a different error:

/wrkdirs/usr/ports/cad/PrusaSlicer/work/PrusaSlicer-version_2.6.0/src/libslic3r/MeshBoolean.cpp:151:16:
error: non-const lvalue reference to type 'reference' (aka
'CGAL::SM_Vertex_index') cannot bind to a temporary of type 'reference'
(aka 'CGAL::SM_Vertex_index')
    for (auto &vi : vertices) {
               ^  ~
/wrkdirs/usr/ports/cad/PrusaSlicer/work/PrusaSlicer-version_2.6.0/src/libslic3r/MeshBoolean.cpp:185:25:
note: in instantiation of function template specialization
'Slic3r::MeshBoolean::cgal::cgal_to_indexed_triangle_set<CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick>>>'
requested here
    return TriangleMesh{cgal_to_indexed_triangle_set(cgalmesh.m)};
                        ^
/usr/local/include/CGAL/Iterator_range.h:49:5: note: selected 'begin'
function with iterator type
'CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick>>::Index_iterator<CGAL::SM_Vertex_index>'
  I begin() const
    ^
/wrkdirs/usr/ports/cad/PrusaSlicer/work/PrusaSlicer-version_2.6.0/src/libslic3r/MeshBoolean.cpp:156:16:
error: non-const lvalue reference to type 'reference' (aka
'CGAL::SM_Face_index') cannot bind to a temporary of type 'reference' (aka
'CGAL::SM_Face_index')
    for (auto &face : faces) {
               ^    ~
/usr/local/include/CGAL/Iterator_range.h:49:5: note: selected 'begin'
function with iterator type
'CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick>>::Index_iterator<CGAL::SM_Face_index>'
  I begin() const
    ^

Cheers


>
> All the best,
>
> Loïc
>
> Le 06/03/2024 à 22:34, Daniel Engberg a écrit :
> > On 2024-03-04T18:34:16.000+01:00, Fernando Apesteguía <
> fernando.apesteguia@gmail.com> wrote:
> >>   On Sun, Mar 3, 2024 at 8:36 PM Daniel Engberg <diizzy@freebsd.org>
> wrote:
> >>
> >>
> >>>     The branch main has been updated by diizzy:
> >>>
> >>>   URL:
> >>>
> https://cgit.FreeBSD.org/ports/commit/?id=ea45a9a534994a1bf97a162168902cebbca1f4c1
> >>>
> >>>   commit ea45a9a534994a1bf97a162168902cebbca1f4c1
> >>>   Author:     Daniel Engberg <diizzy@FreeBSD.org>
> >>>   AuthorDate: 2024-03-03 08:29:04 +0000
> >>>   Commit:     Daniel Engberg <diizzy@FreeBSD.org>
> >>>   CommitDate: 2024-03-03 19:26:10 +0000
> >>>
> >>>       cad/PrusaSlicer: Mark BROKEN
> >>>
> >>>       Fails to build, error: no member named 'prior' in namespace
> 'boost'
> >>>
> >>>       Reported by:    pkg-fallout
> >>>   ---
> >>>    cad/PrusaSlicer/Makefile | 2 ++
> >>>    1 file changed, 2 insertions(+)
> >>>
> >>>   diff --git a/cad/PrusaSlicer/Makefile b/cad/PrusaSlicer/Makefile
> >>>   index dc125244df20..936e76216daf 100644
> >>>   --- a/cad/PrusaSlicer/Makefile
> >>>   +++ b/cad/PrusaSlicer/Makefile
> >>>   @@ -12,6 +12,8 @@ WWW=          https://www.prusa3d.com/prusaslicer/
> >>>    LICENSE=       AGPLv3
> >>>    LICENSE_FILE=  ${WRKSRC}/LICENSE
> >>>
> >>>   +BROKEN=                fails to build, error: no member named
> 'prior' in
> >>>   namespace 'boost'
> >>>   +
> >>>
> >>
> >> Can we revert this?
> >> It is an issue with math/cgal and not cad/PrusaSlicer (
> >> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277480)
> >>
> >> Cheers.
> >>
> >>
> >>
> >>>      BUILD_DEPENDS= cereal&gt;=1.3.0.10:devel/cereal \
> >>>                   cgal&gt;=5.0.2:math/cgal \
> >>>                   opencascade&gt;=7.7.0:cad/opencascade
> > Hi,
> >
> > It breaks Prusaslicer either way?
> >
> https://pdr2.bofh.network/data/140-diizzy/2024-03-02_16h50m15s/logs/errors/PrusaSlicer-2.6.0_8.log
> >
> > Best regards,
> > Daniel
>