aboutsummaryrefslogtreecommitdiffstats
path: root/science
diff options
context:
space:
mode:
authortobik <tobik@FreeBSD.org>2018-07-08 05:09:10 +0800
committertobik <tobik@FreeBSD.org>2018-07-08 05:09:10 +0800
commit391c2defab5a0080fa5fbef44684faa599b9563b (patch)
tree152f29e6fefb2a67a36ba42798dd26c987bbdd85 /science
parent89334b6e122edeb78f9bc61368de754779e86382 (diff)
downloadfreebsd-ports-gnome-391c2defab5a0080fa5fbef44684faa599b9563b.tar.gz
freebsd-ports-gnome-391c2defab5a0080fa5fbef44684faa599b9563b.tar.zst
freebsd-ports-gnome-391c2defab5a0080fa5fbef44684faa599b9563b.zip
science/simlib: Fix build
- Doesn't build with Clang 6 errors.cc:14:42: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] /* 0 */ "SIMLIB/C++ Simulation Library, "SIMLIB_COPYRIGHT"\0" ^ http://beefy12.nyi.freebsd.org/data/head-amd64-default/p473790_s335878/logs/simlib-3.02_1.log - nm crashes during the build on FreeBSD >= 11.1. Use binutils from ports as a workaround. [1] Assertion failed: (ddata->output.size > 0), function cpp_demangle_read_sname, file /usr/src/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c, line 2137. http://beefy9.nyi.freebsd.org/data/111amd64-default/473790/logs/simlib-3.02_1.log PR: 223333 [1]
Diffstat (limited to 'science')
-rw-r--r--science/simlib/Makefile9
-rw-r--r--science/simlib/files/patch-src_errors.txt13
2 files changed, 22 insertions, 0 deletions
diff --git a/science/simlib/Makefile b/science/simlib/Makefile
index fa3b6d83614c..c960aea1fea4 100644
--- a/science/simlib/Makefile
+++ b/science/simlib/Makefile
@@ -20,6 +20,15 @@ CXXFLAGS+= -fPIC
NOT_FOR_ARCHS= aarch64 armv6 armv7 mips mips64 powerpc powerpc64 sparc64
NOT_FOR_ARCHS_REASON= contains not working ${ARCH}-dependent assembly code
+.include <bsd.port.options.mk>
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1101000
+# nm crashes during the build:
+# Assertion failed: (ddata->output.size > 0), function cpp_demangle_read_sname, file /usr/src/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c, line 2137.
+USE_BINUTILS= yes
+BINARY_ALIAS= nm=${NM}
+.endif
+
post-patch:
@${REINPLACE_CMD} -e 's|make|gmake|g' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's#%%PREFIX%%#${PREFIX}#g' \
diff --git a/science/simlib/files/patch-src_errors.txt b/science/simlib/files/patch-src_errors.txt
new file mode 100644
index 000000000000..d14d80bb2ca8
--- /dev/null
+++ b/science/simlib/files/patch-src_errors.txt
@@ -0,0 +1,13 @@
+src/errors.txt is used to generate src/errors.cc
+
+--- src/errors.txt.orig 2018-07-07 20:48:53 UTC
++++ src/errors.txt
+@@ -14,7 +14,7 @@ _ErrMsg(_ErrEnum)
+
+ ////////////////////////////////////////////////////////////////////////////
+
+-Copyright SIMLIB/C++ Simulation Library, "SIMLIB_COPYRIGHT"
++Copyright SIMLIB/C++ Simulation Library, " SIMLIB_COPYRIGHT "
+ UnknownError Undocumented error
+ InternalError Internal error
+ MemoryError No memory