Reinstate big-endian builds, with default blastdb_version 4.
authorAaron M. Ucko <ucko@debian.org>
Wed, 7 Aug 2024 01:37:02 +0000 (21:37 -0400)
committerAaron M. Ucko <ucko@debian.org>
Wed, 7 Aug 2024 01:44:20 +0000 (21:44 -0400)
* debian/control: Reinstate big-endian builds, which can be salvaged
  adequately well.
* debian/patches/big_endian_workaround (new): On big-endian
  architectures, roll makeblastdb's and makeprofiledb's default
  blastdb_version back to 4 pending a proper fix.  Some things,
  including in particular q2-feature-classifier, will still explicitly
  request version 5, but everything else should be OK.  (See #1077777.)

debian/changelog
debian/control
debian/patches/big_endian_workaround [new file with mode: 0644]
debian/patches/series

index 7d1220d59f57a2e1abbc5910325b042ef844bd11..99078fc9fc9930a28c8db44a294e71ad7c949df3 100644 (file)
@@ -1,8 +1,15 @@
 ncbi-blast+ (2.16.0+ds-6) UNRELEASED; urgency=medium
 
   * NOT RELEASED YET.
-
- -- Aaron M. Ucko <ucko@debian.org>  Tue, 06 Aug 2024 21:35:41 -0400
+  * debian/control: Reinstate big-endian builds, which can be salvaged
+    adequately well.
+  * debian/patches/big_endian_workaround (new): On big-endian
+    architectures, roll makeblastdb's and makeprofiledb's default
+    blastdb_version back to 4 pending a proper fix.  Some things,
+    including in particular q2-feature-classifier, will still explicitly
+    request version 5, but everything else should be OK.  (See #1077777.)
+
+ -- Aaron M. Ucko <ucko@debian.org>  Tue, 06 Aug 2024 21:37:01 -0400
 
 ncbi-blast+ (2.16.0+ds-5) unstable; urgency=medium
 
index 9c986a0273879a98bce4bd7f1d9f149566e68774..08ae55814906cf0408c39229ef80072e727065f2 100644 (file)
@@ -6,7 +6,6 @@ Uploaders: Olivier Sallou <osallou@debian.org>,
 Section: science
 Priority: optional
 Build-Depends: debhelper-compat (= 13),
-               architecture-is-little-endian,
                autoconf2.69
 Build-Depends-Arch: libboost-test-dev,
                     libbz2-dev,
diff --git a/debian/patches/big_endian_workaround b/debian/patches/big_endian_workaround
new file mode 100644 (file)
index 0000000..452d405
--- /dev/null
@@ -0,0 +1,34 @@
+--- a/c++/src/app/blastdb/makeblastdb.cpp
++++ b/c++/src/app/blastdb/makeblastdb.cpp
+@@ -293,7 +293,13 @@ void CMakeBlastDBApp::Init()
+     arg_desc->AddDefaultKey("blastdb_version", "version",
+                              "Version of BLAST database to be created",
+                              CArgDescriptions::eInteger,
+-                             NStr::NumericToString(static_cast<int>(eBDB_Version5)));
++                             NStr::NumericToString(static_cast<int>
++#ifdef WORDS_BIGENDIAN
++                                                 (eBDB_Version4)
++#else
++                                                 (eBDB_Version5)
++#endif
++                                                 ));
+     arg_desc->SetConstraint("blastdb_version",
+                             new CArgAllow_Integers(eBDB_Version4, eBDB_Version5));
+     arg_desc->AddDefaultKey("max_file_sz", "number_of_bytes",
+--- a/c++/src/app/blastdb/makeprofiledb.cpp
++++ b/c++/src/app/blastdb/makeprofiledb.cpp
+@@ -420,7 +420,13 @@ void CMakeProfileDBApp::x_SetupArgDescri
+     arg_desc->AddDefaultKey("blastdb_version", "version",
+                              "Version of BLAST database to be created",
+                              CArgDescriptions::eInteger,
+-                             NStr::NumericToString(static_cast<int>(eBDB_Version5)));
++                             NStr::NumericToString(static_cast<int>
++#ifdef WORDS_BIGENDIAN
++                                                 (eBDB_Version4)
++#else
++                                                 (eBDB_Version5)
++#endif
++                                                 ));
+     arg_desc->SetConstraint("blastdb_version",
+                             new CArgAllow_Integers(eBDB_Version4, eBDB_Version5));
index 5e632f4013e498c3a1c23844a0d1fcae49da4532..d754932eb1cc5c065cd715c3b6bab092cef4af1b 100644 (file)
@@ -20,3 +20,4 @@ support_gcc10
 run_perl_directly
 tune_lmdb_defaults
 2to3
+big_endian_workaround