svn commit: r518767 - in head/math/cln: . files
Piotr Kubaj
pkubaj at FreeBSD.org
Sun Dec 1 12:08:40 UTC 2019
Author: pkubaj
Date: Sun Dec 1 12:08:39 2019
New Revision: 518767
URL: https://svnweb.freebsd.org/changeset/ports/518767
Log:
math/cln: fix build on powerpc64 elfv2, simplify port
powerpc64 elfv2 needs the same patches as arm* and aarch64, but builds without -DNO_ASM. Simplify the port by applying the arm patches everywhere and use CPPFLAGS_${ARCH} instead of .if ${ARCH} block. Build passes on powerpc64 elfv1 fine, so the original issue must have been fixed.
PR: 242296
Approved by: wen (maintainer), linimon (mentor)
Added:
head/math/cln/files/patch-src_base_low_cl__low__div.cc
- copied unchanged from r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__div.cc
head/math/cln/files/patch-src_base_low_cl__low__mul.cc
- copied unchanged from r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__mul.cc
Deleted:
head/math/cln/files/extra-patch-src_base_low_cl__low__div.cc
head/math/cln/files/extra-patch-src_base_low_cl__low__mul.cc
Modified:
head/math/cln/Makefile
Modified: head/math/cln/Makefile
==============================================================================
--- head/math/cln/Makefile Sun Dec 1 11:07:13 2019 (r518766)
+++ head/math/cln/Makefile Sun Dec 1 12:08:39 2019 (r518767)
@@ -22,12 +22,8 @@ USE_LDCONFIG= yes
INFO= cln
-.include <bsd.port.pre.mk>
+CPPFLAGS_aarch64= -DNO_ASM
+CPPFLAGS_armv6= -DNO_ASM
+CPPFLAGS_armv7= -DNO_ASM
-.if ${ARCH} == aarch64 || ${ARCH} == armv6 || ${ARCH} == armv7
-CPPFLAGS+= -DNO_ASM
-EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src_base_low_cl__low__div.cc \
- ${PATCHDIR}/extra-patch-src_base_low_cl__low__mul.cc
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Copied: head/math/cln/files/patch-src_base_low_cl__low__div.cc (from r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__div.cc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/cln/files/patch-src_base_low_cl__low__div.cc Sun Dec 1 12:08:39 2019 (r518767, copy of r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__div.cc)
@@ -0,0 +1,11 @@
+--- src/base/low/cl_low_div.cc.orig 2011-04-08 21:07:28 UTC
++++ src/base/low/cl_low_div.cc
+@@ -207,7 +207,7 @@ uint32 divu_6432_3232_(uint32 xhi, uint32 xlo, uint32
+ #endif
+
+ #ifdef NEED_VAR_divu_64_rest
+-uint64 divu_64_rest;
++extern "C" uint64 divu_64_rest = 0;
+ #endif
+
+ #ifdef NEED_FUNCTION_divu_6464_6464_
Copied: head/math/cln/files/patch-src_base_low_cl__low__mul.cc (from r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__mul.cc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/cln/files/patch-src_base_low_cl__low__mul.cc Sun Dec 1 12:08:39 2019 (r518767, copy of r518766, head/math/cln/files/extra-patch-src_base_low_cl__low__mul.cc)
@@ -0,0 +1,16 @@
+--- src/base/low/cl_low_mul.cc.orig 2011-04-08 21:06:30 UTC
++++ src/base/low/cl_low_mul.cc
+@@ -50,11 +50,11 @@ uint64 mulu32_w (uint32 arg1, uint32 arg2)
+
+
+ #ifdef NEED_VAR_mulu64_high
+-uint64 mulu64_high;
++extern "C" uint64 mulu64_high;
+ #endif
+
+ #ifdef NEED_FUNCTION_mulu64_
+-uint64 mulu64_high;
++extern "C" uint64 mulu64_high = 0;
+ namespace cln {
+ extern "C" uint64 mulu64_ (uint64 x, uint64 y);
+ uint64 mulu64_ (uint64 x, uint64 y)
More information about the svn-ports-all
mailing list