pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/geography/opencpn
Module Name: pkgsrc
Committed By: bouyer
Date: Fri Apr 13 18:57:29 UTC 2018
Modified Files:
pkgsrc/geography/opencpn: Makefile distinfo
pkgsrc/geography/opencpn/patches: patch-src_ocpndc.cpp
Log Message:
earmv7hf gcc also miscompiles ocpnDC::DrawRounderRectangle now
(or maybe opencpn 4.8.0 didn't use it).
Apply the same workaround as ocpnDC::DrawEllipse.
Bump PKGREVISION
To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 pkgsrc/geography/opencpn/Makefile
cvs rdiff -u -r1.17 -r1.18 pkgsrc/geography/opencpn/distinfo
cvs rdiff -u -r1.1 -r1.2 \
pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/geography/opencpn/Makefile
diff -u pkgsrc/geography/opencpn/Makefile:1.19 pkgsrc/geography/opencpn/Makefile:1.20
--- pkgsrc/geography/opencpn/Makefile:1.19 Thu Apr 5 15:34:33 2018
+++ pkgsrc/geography/opencpn/Makefile Fri Apr 13 18:57:29 2018
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.19 2018/04/05 15:34:33 bouyer Exp $
+# $NetBSD: Makefile,v 1.20 2018/04/13 18:57:29 bouyer Exp $
DISTNAME= OpenCPN-4.8.2
+PKGREVISION= 1
PKGNAME= ${DISTNAME:S/OpenCPN/opencpn/}
CATEGORIES= geography
MASTER_SITES= ${MASTER_SITE_GITHUB:=OpenCPN/}
Index: pkgsrc/geography/opencpn/distinfo
diff -u pkgsrc/geography/opencpn/distinfo:1.17 pkgsrc/geography/opencpn/distinfo:1.18
--- pkgsrc/geography/opencpn/distinfo:1.17 Mon Apr 9 18:44:50 2018
+++ pkgsrc/geography/opencpn/distinfo Fri Apr 13 18:57:29 2018
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.17 2018/04/09 18:44:50 bouyer Exp $
+$NetBSD: distinfo,v 1.18 2018/04/13 18:57:29 bouyer Exp $
SHA1 (OpenCPN-4.8.2.zip) = 9547a99c0de739fb0f4953d37bb738ed651f5c62
RMD160 (OpenCPN-4.8.2.zip) = f217d07cc639292e657b0f89f96daa12cab2a355
@@ -17,7 +17,7 @@ SHA1 (patch-src_chart1.cpp) = ae7c1d8a59
SHA1 (patch-src_crashprint.cpp) = a96e8aa980eb3b19c3dce3343582511d608e6625
SHA1 (patch-src_glu_CMakeLists.txt) = d63494a41071097252ac9e2cb95db75041f30b62
SHA1 (patch-src_mipmap_mipmap.c) = 3bdb2c37e7a6d89fc6a531af6e0396a1ff385aeb
-SHA1 (patch-src_ocpndc.cpp) = cd425bec24050176a08e7ec8280bf853fd10c756
+SHA1 (patch-src_ocpndc.cpp) = 4a72093a49f29d66a42e3f64b99a1a40bf08a658
SHA1 (patch-src_printtable.cpp) = 52ed0f09610d56e9acc5ec9b8e4cbdc7ad55d043
SHA1 (patch-src_routeprintout.cpp) = c0f960b76b1b7a8acb7e5faca5f656a5c259f02c
SHA1 (patch-src_tcmgr.cpp) = 3fb4edf3368f3f3907f231ebcabd8e5061699040
Index: pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp
diff -u pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp:1.1 pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp:1.2
--- pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp:1.1 Tue Sep 12 17:31:20 2017
+++ pkgsrc/geography/opencpn/patches/patch-src_ocpndc.cpp Fri Apr 13 18:57:29 2018
@@ -1,19 +1,31 @@
-$NetBSD: patch-src_ocpndc.cpp,v 1.1 2017/09/12 17:31:20 bouyer Exp $
-For some reason ocpnDC::DrawEllipse is miscompiled on NetBSD 8.0_BETA earmv7hf:
+$NetBSD: patch-src_ocpndc.cpp,v 1.2 2018/04/13 18:57:29 bouyer Exp $
+For some reason ocpnDC::DrawEllipse and ocpnDC::DrawRounderRectangle
+and is miscompiled on NetBSD 8.0_BETA and gcc 6.4 from HEAD earmv7hf:
for the tail call to dc->DrawEllipse() the compiler emits a bx instruction,
but forgets to load the address of the function in the register.
The memory barrier works around this problem by avoiding the tail-call
optimisation.
Other similar functions in this file are properly compiled ...
+I suspect it's related to the vfp register use in these functions.
---- src/ocpndc.cpp.orig 2017-09-12 15:29:07.101981729 +0200
-+++ src/ocpndc.cpp 2017-09-12 17:00:40.945848063 +0200
-@@ -769,6 +769,9 @@
+--- src/ocpndc.cpp.orig 2018-02-07 12:08:26.000000000 +0100
++++ src/ocpndc.cpp 2018-04-13 15:31:34.958778133 +0200
+@@ -716,6 +716,9 @@
+ }
+ }
+ #endif
++#ifdef __arm__
++ asm volatile("" ::: "memory");
++#endif
+ }
+
+ void ocpnDC::DrawCircle( wxCoord x, wxCoord y, wxCoord radius )
+@@ -775,6 +778,9 @@
glDisable( GL_BLEND );
}
#endif
+#ifdef __arm__
-+ asm volatile("" ::: "memory");
++ asm volatile("" ::: "memory");
+#endif
}
Home |
Main Index |
Thread Index |
Old Index