Clang 19 has become more strict about errors in member functions, which
results in errors building ports that use headers from math/cgal, such
as cad/csxcad:
In file included from /wrkdirs/usr/ports/cad/csxcad/work/CSXCAD-0.6.3/src/CSPrimPolyhedron.cpp:25:
In file included from /wrkdirs/usr/ports/cad/csxcad/work/CSXCAD-0.6.3/src/CSPrimPolyhedron_p.h:6:
In file included from /usr/local/include/CGAL/Polyhedron_3.h:25:
In file included from /usr/local/include/CGAL/HalfedgeDS_default.h:23:
In file included from /usr/local/include/CGAL/boost/graph/graph_traits_HalfedgeDS_default.h:15:
In file included from /usr/local/include/CGAL/boost/graph/graph_traits_HalfedgeDS.h:29:
/usr/local/include/CGAL/boost/graph/iterator.h:224:22: error: no member named 'base' in 'Halfedge_around_source_iterator<Graph>'
224 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
/usr/local/include/CGAL/boost/graph/iterator.h:324:22: error: no member named 'base' in 'Halfedge_around_target_iterator<Graph>'
324 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
/usr/local/include/CGAL/boost/graph/iterator.h:423:22: error: no member named 'base' in 'Halfedge_around_face_iterator<Graph>'
423 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
The problem is that the `base()` member function is only available when
an iterator is derived from `boost::iterator_adaptor`, but the three
iterators mentioned above, `Halfedge_around_source_iterator`,
`Halfedge_around_target_iterator` and `Halfedge_around_face_iterator`
are not.
Upstream CGAL has done a bit more refactoring in this particular area,
but is enough to cherry-pick the changes that remove the `operator
bool_type() const` member functions, which reference the non-existing
`base()` member function.
Bump PORTREVISION to ensure dependent ports build against the fixed
headers.
PR: 281880
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q4
prior() and next() have been moved to its own header.
cad/PrusaSlicer fails to build when including Plane_3_Triangle_3_intersection.h
PR: 277480
Approved by: maintainer’s time-out
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.
Document in CHANGES.
PR: 266034
Exp-run by: antoine
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D36349
Commit b7f05445c0 has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.
There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.
The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.
Approved by: portmgr (tcberner)
Per discussion with bapt on helping pkg handle the changing of these
deps and avoiding impossible upgrade senarios.
PR: 246767
Reviewed by: manu, bapt
Approved by: x11
Differential Revision: https://reviews.freebsd.org/D30824
- Add some dependencies which might be detected by Find_Package but not registered;
- Bump PORTREVISION of consumers.
PR: 250833
Submitted by: /me
Approved by: tcberner@ (KDE / maintainer) + exp-run
The new version of CGAL brings improvements and a lot of changes, including 2 major ones [1](header only[2] and require c++14) requiring to patch all software depending on it.
[1] https://www.cgal.org/2019/11/08/cgal50/
[2] https://doc.cgal.org/latest/Manual/installation.html
math/cgal:
- Update to 5.0.2
databases/sfcgal:
- Fix with cgal5 : use c++14 and add gmpxx link
databases/postgis*:
- bump portversion needed due to cgal and sfcgal changes
cad/openscad:
- remove LIB_DEPENDS and add BUILD_DEPENDS
- Use c++14
cad/openscad-devel:
- remove LIB_DEPENDS and add BUILD_DEPENDS
- Use c++14
games/flightgear-terragear:
- remove LIB_DEPENDS and add BUILD_DEPENDS
- fix Boost error (ld: error: undefined symbol: boost::thread::hardware_concurrency())
graphics/colmap:
- remove LIB_DEPENDS and add BUILD_DEPENDS
- fix CMAKE_CXX_FLAGS with c++14
PR: 245824
Approved by: wen, jbeich, tcberner (mentor)
Differential Revision: D24578
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: →https://reviews.freebsd.org/D15540
Usage:
USES=eigen:<version>[,<type>]
version: 2 or 3 (required)
type: build (default), run
For example:
USES=eigen:2,build,run
will add a BUILD- and RUN_DEPENDS on math/eigen2, and
USES=eigen:3
will add a BUILD_DEPENDS on math/eigen3.
* Convert the existing ports to use it
- biology/iqtree: remove run time dependency (seemed not to be needed)
- graphics/movit: remove run time dependency (seemed not to be needed)
- science/avogadro: add run time dependeny (installed cmake file requires it to be present)
Reviewed by: rakuco, mat
Differential Revision: https://reviews.freebsd.org/D13702
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.