pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/cad/librecad



Module Name:    pkgsrc
Committed By:   riastradh
Date:           Sun Jan 19 16:59:13 UTC 2025

Modified Files:
        pkgsrc/cad/librecad: Makefile

Log Message:
cad/librecad: Requires C++14.

Here is a sampling of errors when I try to build it without C++14:

--- ../../generated/librecad/obj/rs_ellipse.o ---
In file included from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:14,
                 from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/config.hpp:28:6: warning: #warning "Boost.Math requires C++14" [-Wcpp]
   28 | #    warning "Boost.Math requires C++14"
      |      ^~~~~~~
...
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/type_traits.hpp:208:12: error: 'is_final' has not been declared in 'std'
  208 | using std::is_final;
      |            ^~~~~~~~
...
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/type_traits.hpp:315:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14'
  315 | BOOST_MATH_INLINE_CONSTEXPR bool is_void_v = boost::math::is_void<T>::value;
      |                                  ^~~~~~~~~
...
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/pow.hpp:126:79: error: redeclaration 'constexpr typename 
boost::math::tools::promote_args<T2>::type boost::math::pow(T, const Policy&)' differs in 'constexpr' from previous declaration
  126 | BOOST_MATH_GPU_ENABLED constexpr inline typename tools::promote_args<T>::type pow(T base, const Policy& policy)
      |                                                                               ^~~
In file included from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/sign.hpp:20,
                 from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:20,
                 from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/math_fwd.hpp:1173:79: note: previous declaration 'boost::math::tools::promote_args_t<T> 
boost::math::pow(T, const Policy&)'
 1173 |    BOOST_MATH_GPU_ENABLED BOOST_MATH_CXX14_CONSTEXPR tools::promote_args_t<T> pow(T base, const Policy& policy);
      |                                                                               ^~~
...
In file included from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/math_fwd.hpp:28,
                 from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/sign.hpp:20,
                 from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:20,
                 from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/promotion.hpp: In instantiation of 'struct boost::math::tools::promote_args_permissive<double, double>':
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/promotion.hpp:119:16:   required from 'struct boost::math::tools::promote_args<double, double>'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/promotion.hpp:129:13:   required by substitution of 'template<class ... Args> using promote_args_t = typename 
boost::math::tools::promote_args::type [with Args = {double, double}]'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/next.hpp:737:42:   required by substitution of 'template<class T, class U> 
boost::math::tools::promote_args_t<RT1, RT2> boost::math::float_distance(const T&, const U&) [with T = double; U = double]'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:677:39:   required from 'T boost::math::tools::detail::second_order_root_finder(F, T, T, T, int, 
uintmax_t&) [with Stepper = boost::math::tools::detail::halley_step; F = {anonymous}::EllipseDistanceFunctor; T = double; uintmax_t = long unsigned int]'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:755:64:   required from 'T boost::math::tools::halley_iterate(F, T, T, T, int, uintmax_t&) [with F 
= {anonymous}::EllipseDistanceFunctor; T = double; uintmax_t = long unsigned int]'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:762:25:   required from 'T boost::math::tools::halley_iterate(F, T, T, T, int) [with F = 
{anonymous}::EllipseDistanceFunctor; T = double]'
lib/engine/rs_ellipse.cpp:139:23:   required from here
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/promotion.hpp:105:16: error: no type named 'type' in 'struct 
boost::math::tools::pa2_integral_already_removed<double, double, true>'
  105 |          using type = typename pa2_integral_already_removed<
      |                ^~~~
...
In file included from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp: In instantiation of 'T boost::math::tools::detail::second_order_root_finder(F, T, T, T, int, 
uintmax_t&) [with Stepper = boost::math::tools::detail::halley_step; F = {anonymous}::EllipseDistanceFunctor; T = double; uintmax_t = long unsigned int]':
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:755:64:   required from 'T boost::math::tools::halley_iterate(F, T, T, T, int, uintmax_t&) [with F 
= {anonymous}::EllipseDistanceFunctor; T = double; uintmax_t = long unsigned int]'
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:762:25:   required from 'T boost::math::tools::halley_iterate(F, T, T, T, int) [with F = 
{anonymous}::EllipseDistanceFunctor; T = double]'
lib/engine/rs_ellipse.cpp:139:23:   required from here
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:677:39: error: no matching function for call to 'float_distance(double&, double&)'
  677 |                if (fabs(float_distance(min, max)) < 2)
      |                         ~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:25,
                 from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/next.hpp:703:49: note: candidate: 'template<class T, class U, class Policy> 
boost::math::tools::promote_args_t<RT1, RT2> boost::math::float_distance(const T&, const U&, const Policy&)'
  703 | inline typename tools::promote_args<T, U>::type float_distance(const T& a, const U& b, const Policy& pol)
      |                                                 ^~~~~~~~~~~~~~
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/special_functions/next.hpp:703:49: note:   template argument deduction/substitution failed:
In file included from lib/engine/rs_ellipse.cpp:49:
/home/riastradh/pkgsrc/current/work/cad/librecad/work/.buildlink/include/boost/math/tools/roots.hpp:677:39: note:   candidate expects 3 arguments, 2 provided
  677 |                if (fabs(float_distance(min, max)) < 2)
      |                         ~~~~~~~~~~~~~~^~~~~~~~~~


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 pkgsrc/cad/librecad/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/cad/librecad/Makefile
diff -u pkgsrc/cad/librecad/Makefile:1.86 pkgsrc/cad/librecad/Makefile:1.87
--- pkgsrc/cad/librecad/Makefile:1.86   Sun Dec 29 15:09:40 2024
+++ pkgsrc/cad/librecad/Makefile        Sun Jan 19 16:59:12 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.86 2024/12/29 15:09:40 adam Exp $
+# $NetBSD: Makefile,v 1.87 2025/01/19 16:59:12 riastradh Exp $
 
 DISTNAME=      LibreCAD-2.2.0-rc2
 PKGNAME=       ${DISTNAME:tl:S/-rc2/.rc2/g}
@@ -17,11 +17,13 @@ TOOL_DEPENDS+=      qt5-qttools-[0-9]*:../../
 
 EXTRACT_USING= bsdtar
 
-USE_LANGUAGES= c c++11
+USE_LANGUAGES= c c++14
+FORCE_CXX_STD= -std=c++14
 USE_TOOLS+=    pax pkg-config
 USE_LIBTOOL=   yes
 
-USE_CXX_FEATURES+=     c++11
+BUILDLINK_TRANSFORM+=  rm:-std=gnu++11
+USE_CXX_FEATURES+=     c++14
 
 SUBST_CLASSES+=                qtdir
 SUBST_STAGE.qtdir=     pre-configure
@@ -29,7 +31,6 @@ SUBST_MESSAGE.qtdir=  Set qt5/bin
 SUBST_FILES.qtdir+=    scripts/postprocess-unix.sh
 SUBST_VARS.qtdir+=     QTDIR
 
-
 SUBST_CLASSES+=                prefix
 SUBST_STAGE.prefix=    pre-configure
 SUBST_MESSAGE.prefix=  Fix hardcoded path



Home | Main Index | Thread Index | Old Index