aboutsummaryrefslogtreecommitdiff
path: root/cad
diff options
context:
space:
mode:
authorRaphael Kubo da Costa <rakuco@FreeBSD.org>2017-07-28 21:45:44 +0000
committerRaphael Kubo da Costa <rakuco@FreeBSD.org>2017-07-28 21:45:44 +0000
commitf47f0f2fb8fb12626e7465f1f52ddbb057f124f5 (patch)
tree92b3b17941ae6161f3680589addb59650f6b9ad6 /cad
parentf872930d0e52c8802d4085a53fd91d3af6e0ddad (diff)
Explicitly build with -std=gnu++11.
This fixes the build with GCC 6, which switched its default from -std=gnu++98 to -std=gnu++14. With this switch, it added a `operator delete(void*, size_t)' overload and uses it for all delete calls. This does not play well with dependencies built with other compilers (such as base clang), which use the old operator delete overload and cause linking errors. PR: 219484 Submitted by: fernando.apesteguia@gmail.com (maintainer) MFH: 2017Q3
Notes
Notes: svn path=/head/; revision=446855
Diffstat (limited to 'cad')
-rw-r--r--cad/openvsp/Makefile7
1 files changed, 7 insertions, 0 deletions
diff --git a/cad/openvsp/Makefile b/cad/openvsp/Makefile
index 7da7087726b7..fa8f113f857b 100644
--- a/cad/openvsp/Makefile
+++ b/cad/openvsp/Makefile
@@ -34,6 +34,13 @@ CMAKE_SOURCE_PATH= ${WRKSRC}/SuperProject
CMAKE_INSTALL_PREFIX= ${STAGEDIR}${PREFIX}
USES= cmake:outsource,noninja compiler:gcc-c++11-lib jpeg
+# On FreeBSD < 11 libc++ lacks support for sized delete operators.
+# GCC dropped the builtin version of these operators in 6+ by
+# defaulting to gnu++14. Force c++11 instead.
+# For a more detailed discussion see:
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219484
+USE_CXXSTD= gnu++11
+
CMAKE_ARGS= -DVSP_USE_SYSTEM_CMINPACK:BOOLEAN=yes \
-DVSP_USE_SYSTEM_CPPTEST:BOOLEAN=yes \
-DVSP_USE_SYSTEM_CODEELI:BOOLEAN=no \