[med-svn] [Git][med-team/ugene][master] 3 commits: Patching out _neon methods to avoid build failure on arm64

Pierre Gruet (@pgt) gitlab at salsa.debian.org
Fri Oct 4 16:06:35 BST 2024



Pierre Gruet pushed to branch master at Debian Med / ugene


Commits:
5407e187 by Pierre Gruet at 2024-10-04T15:36:28+02:00
Patching out _neon methods to avoid build failure on arm64

- - - - -
6f9d2f47 by Pierre Gruet at 2024-10-04T15:38:25+02:00
Using signed char to allow one to have negative char variables on arm architectures

- - - - -
c2d2fea0 by Pierre Gruet at 2024-10-04T15:42:27+02:00
Upload to unstable

- - - - -


4 changed files:

- debian/changelog
- debian/patches/series
- + debian/patches/signed_char_neighbour_table.patch
- + debian/patches/undefined_references.patch


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,11 @@
+ugene (51.0+dfsg-2) unstable; urgency=medium
+
+  * Patching out _neon methods to avoid build failure on arm64
+  * Using signed char to allow one to have negative char variables on arm
+    architectures
+
+ -- Pierre Gruet <pgt at debian.org>  Fri, 04 Oct 2024 15:38:37 +0200
+
 ugene (51.0+dfsg-1) unstable; urgency=medium
 
   * New upstream version 51.0+dfsg


=====================================
debian/patches/series
=====================================
@@ -5,3 +5,5 @@ use_debian_sqlite.patch
 python_interpreter.patch
 set_rpath.patch
 plugins_directory.patch
+undefined_references.patch
+signed_char_neighbour_table.patch


=====================================
debian/patches/signed_char_neighbour_table.patch
=====================================
@@ -0,0 +1,28 @@
+Description: indicating we use signed char, so that we don't depend on the
+ default choice of the implementation
+Author: Pierre Gruet <pgt at debian.org>
+Forwarded: https://github.com/ugeneunipro/ugene/issues/1682
+Last-Update: 2024-10-04
+
+--- a/src/plugins_3rdparty/ball/src/include/BALL/DATATYPE/hashGrid.h
++++ b/src/plugins_3rdparty/ball/src/include/BALL/DATATYPE/hashGrid.h
+@@ -37,7 +37,7 @@
+ {
+ 	namespace __private
+ 	{
+-		extern const char BALL_EXPORT neighbour_table_[27][3];
++		extern const signed char BALL_EXPORT neighbour_table_[27][3];
+ 	}
+ 
+ 	template <typename Item> class HashGrid3;
+--- a/src/plugins_3rdparty/ball/src/source/DATATYPE/hashGrid.cpp
++++ b/src/plugins_3rdparty/ball/src/source/DATATYPE/hashGrid.cpp
+@@ -9,7 +9,7 @@
+ {
+ 	namespace __private
+ 	{
+-		const char neighbour_table_[27][3] =
++		const signed char neighbour_table_[27][3] =
+ 		{
+ 			{ 0,  0,  0 }, { 0,  0, -1 }, { 0,  0,  1 },
+ 			{ 0, -1, -1 }, { 0, -1,  0 }, { 0, -1,  1 },


=====================================
debian/patches/undefined_references.patch
=====================================
@@ -0,0 +1,62 @@
+Description: removing _neon signatures to avoid build failure on aarch64
+Author: Pierre Gruet <pgt at debian.org>
+Forwarded: https://github.com/ugeneunipro/ugene/issues/1681
+Last-Update: 2024-10-04
+
+--- a/src/libs_3rdparty/samtools/src/samtools_core/htslib/htscodecs/htscodecs/rANS_static32x16pr.h
++++ b/src/libs_3rdparty/samtools/src/samtools_core/htslib/htscodecs/htscodecs/rANS_static32x16pr.h
+@@ -145,28 +145,6 @@
+ #endif // HAVE_AVX512
+ 
+ //----------------------------------------------------------------------
+-// Arm Neon implementation
+-#if defined(__ARM_NEON) && defined(__aarch64__)
+-unsigned char *rans_compress_O0_32x16_neon(unsigned char *in,
+-                                           unsigned int in_size,
+-                                           unsigned char *out,
+-                                           unsigned int *out_size);
+-
+-unsigned char *rans_uncompress_O0_32x16_neon(unsigned char *in,
+-                                             unsigned int in_size,
+-                                             unsigned char *out,
+-                                             unsigned int out_sz);
+-
+-unsigned char *rans_compress_O1_32x16_neon(unsigned char *in,
+-                                           unsigned int in_size,
+-                                           unsigned char *out,
+-                                           unsigned int *out_size);
+-
+-unsigned char *rans_uncompress_O1_32x16_neon(unsigned char *in,
+-                                             unsigned int in_size,
+-                                             unsigned char *out,
+-                                             unsigned int out_sz);
+-#endif // ARM_NEON
+ 
+ #ifdef __cplusplus
+ }
+--- a/src/libs_3rdparty/samtools/src/samtools_core/htslib/htscodecs/htscodecs/rANS_static4x16pr.c
++++ b/src/libs_3rdparty/samtools/src/samtools_core/htslib/htscodecs/htscodecs/rANS_static4x16pr.c
+@@ -1066,11 +1066,6 @@
+      unsigned int *out_size) {
+ 
+     if (do_simd) {
+-        if ((rans_cpu & RANS_CPU_ENC_NEON) && have_neon())
+-            return order & 1
+-                ? rans_compress_O1_32x16_neon
+-                : rans_compress_O0_32x16_neon;
+-        else
+             return order & 1
+                 ? rans_compress_O1_32x16
+                 : rans_compress_O0_32x16;
+@@ -1089,11 +1084,6 @@
+      unsigned int out_size) {
+ 
+     if (do_simd) {
+-        if ((rans_cpu & RANS_CPU_DEC_NEON) && have_neon())
+-            return order & 1
+-                ? rans_uncompress_O1_32x16_neon
+-                : rans_uncompress_O0_32x16_neon;
+-        else
+             return order & 1
+                 ? rans_uncompress_O1_32x16
+                 : rans_uncompress_O0_32x16;



View it on GitLab: https://salsa.debian.org/med-team/ugene/-/compare/f204bf5e682d9ffaaef5adf0f96cc418d63c56e4...c2d2fea03c8a4225aaa9f700d7f149ce5351458b

-- 
View it on GitLab: https://salsa.debian.org/med-team/ugene/-/compare/f204bf5e682d9ffaaef5adf0f96cc418d63c56e4...c2d2fea03c8a4225aaa9f700d7f149ce5351458b
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20241004/17d6a1fe/attachment-0001.htm>


More information about the debian-med-commit mailing list