Compare commits
No commits in common. "rawhide" and "f35" have entirely different histories.
14 changed files with 230 additions and 327 deletions
|
|
@ -12,7 +12,7 @@ TIME=$(date '+%H%M')
|
|||
TARNAME=${REPONAME}-free-${DATE}T${TIME}.tar.gz
|
||||
|
||||
PWDDIR=$(pwd)
|
||||
TMPDIR=$(mktemp -d $(pwd)/tmp-${REPONAME}-XXXXXX)
|
||||
TMPDIR=$(mktemp -d /var/tmp/${REPONAME}-XXXXXX)
|
||||
pushd $TMPDIR
|
||||
|
||||
git clone --depth 30 --no-single-branch --mirror $GITURL
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (ugene-free-53.0.tar.gz) = 233c857d9a0ea42005efaa53e5ba5162e76a149f01d7406a73bd9215b96c096b3c379cc3b14c7d7b83c61df5ea2435412f6d43c71aef84b23d1d683d5a172b30
|
||||
SHA512 (ugene-free-44.0.tar.gz) = 2bc39e98335a5a89267759d438bb7b3fc61c44077a95385d0f2b39affbc07ac17956da35e64f7ae8df16c4ea469d1a937092592c34af2775c3eaa0a6ecd9f6dd
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@
|
|||
} // namespace google_breakpad
|
||||
--- ugene-40.1/src/libs_3rdparty/breakpad/src/client/linux/handler/exception_handler.cc.port 2021-11-09 11:04:57.135469882 +0900
|
||||
+++ ugene-40.1/src/libs_3rdparty/breakpad/src/client/linux/handler/exception_handler.cc 2021-11-09 12:06:47.875738562 +0900
|
||||
@@ -442,6 +442,7 @@ int ExceptionHandler::ThreadEntry(void*
|
||||
@@ -441,6 +441,7 @@ int ExceptionHandler::ThreadEntry(void*
|
||||
// This function runs in a compromised context: see the top of the file.
|
||||
// Runs on the crashing thread.
|
||||
bool ExceptionHandler::HandleSignal(int /*sig*/, siginfo_t* info, void* uc) {
|
||||
|
|
@ -69,7 +69,7 @@
|
|||
if (filter_ && !filter_(callback_context_))
|
||||
return false;
|
||||
|
||||
@@ -483,6 +484,9 @@ bool ExceptionHandler::HandleSignal(int
|
||||
@@ -482,6 +483,9 @@ bool ExceptionHandler::HandleSignal(int
|
||||
}
|
||||
}
|
||||
return GenerateDump(&g_crash_context_);
|
||||
|
|
@ -79,7 +79,7 @@
|
|||
}
|
||||
|
||||
// This is a public interface to HandleSignal that allows the client to
|
||||
@@ -661,6 +665,7 @@ bool ExceptionHandler::WriteMinidump(con
|
||||
@@ -660,6 +664,7 @@ bool ExceptionHandler::WriteMinidump(con
|
||||
__attribute__((optimize("no-omit-frame-pointer")))
|
||||
#endif
|
||||
bool ExceptionHandler::WriteMinidump() {
|
||||
|
|
@ -87,7 +87,7 @@
|
|||
if (!IsOutOfProcess() && !minidump_descriptor_.IsFD() &&
|
||||
!minidump_descriptor_.IsMicrodumpOnConsole()) {
|
||||
// Update the path of the minidump so that this can be called multiple times
|
||||
@@ -735,6 +740,9 @@ bool ExceptionHandler::WriteMinidump() {
|
||||
@@ -734,6 +739,9 @@ bool ExceptionHandler::WriteMinidump() {
|
||||
#endif
|
||||
|
||||
return GenerateDump(&context);
|
||||
|
|
|
|||
|
|
@ -40,6 +40,6 @@
|
|||
+#endif
|
||||
+QT_END_NAMESPACE
|
||||
+
|
||||
extern "C" {
|
||||
#include "samtools_core/htslib/cram/cram_samtools.h"
|
||||
}
|
||||
namespace U2 {
|
||||
|
||||
static quint8 cigarOp2samtools(U2CigarOp op, U2OpStatus &os) {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
+++ ugene-40.1/src/plugins_3rdparty/hmm2/src/u_search/HMMSearchDialogController.cpp 2021-11-09 01:34:30.052988784 +0900
|
||||
@@ -81,7 +81,9 @@
|
||||
QWidget* w = createController->getWidget();
|
||||
auto l = qobject_cast<QVBoxLayout*>(layout());
|
||||
QVBoxLayout* l = qobject_cast<QVBoxLayout*>(layout());
|
||||
l->insertWidget(1, w);
|
||||
+#if defined (__SSE2__)
|
||||
algoCombo->addItem(tr("SSE optimized"), HMMSearchAlgo_SSEOptimized);
|
||||
|
|
@ -10,6 +10,25 @@
|
|||
algoCombo->addItem(tr("Conservative"), HMMSearchAlgo_Conservative);
|
||||
|
||||
okButton = buttonBox->button(QDialogButtonBox::Ok);
|
||||
--- ugene-40.1/src/plugins_3rdparty/hmm2/src/u_search/uhmmsearch.cpp.sse 2021-10-11 15:41:23.000000000 +0900
|
||||
+++ ugene-40.1/src/plugins_3rdparty/hmm2/src/u_search/uhmmsearch.cpp 2021-11-09 01:34:30.052988784 +0900
|
||||
@@ -56,9 +56,15 @@
|
||||
tophit_s* dhit = AllocTophits(200); // domain hits: 200=lumpsize
|
||||
|
||||
int nseq = 0; // number of sequences searched
|
||||
+#if defined(__SSE2__)
|
||||
if (s.alg == HMMSearchAlgo_SSEOptimized) {
|
||||
main_loop_opt(hmm, seq, seqLen, &thresh, do_forward, do_null2, do_xnu, histogram, ghit, dhit, &nseq, si, sseScoring);
|
||||
- } else if (s.alg == HMMSearchAlgo_Conservative) {
|
||||
+ }
|
||||
+#else
|
||||
+ if (0) {
|
||||
+ }
|
||||
+#endif
|
||||
+ else if (s.alg == HMMSearchAlgo_Conservative) {
|
||||
main_loop_serial(hmm, seq, seqLen, &thresh, do_forward, do_null2, do_xnu, histogram, ghit, dhit, &nseq, si);
|
||||
} else {
|
||||
assert(false && "bad hmmsearch algorithm selected");
|
||||
--- ugene-42.0/src/plugins_3rdparty/hmm2/src/u_search/uhmmsearch_sse.cpp.sse 2022-03-09 15:37:14.586340751 +0900
|
||||
+++ ugene-42.0/src/plugins_3rdparty/hmm2/src/u_search/uhmmsearch_sse.cpp 2022-03-09 15:47:23.559077800 +0900
|
||||
@@ -1,4 +1,5 @@
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
--- ugene-42.x/src/libs_3rdparty/breakpad/src/third_party/lss/linux_syscall_support.h.sys_mmap 2021-10-11 15:41:23.000000000 +0900
|
||||
+++ ugene-42.x/src/libs_3rdparty/breakpad/src/third_party/lss/linux_syscall_support.h 2021-11-09 00:46:06.363362301 +0900
|
||||
@@ -86,10 +86,7 @@
|
||||
@@ -85,10 +85,7 @@
|
||||
* on Linux.
|
||||
* Porting to other related platforms should not be difficult.
|
||||
*/
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
#ifndef SYS_CPLUSPLUS
|
||||
#ifdef __cplusplus
|
||||
@@ -108,15 +105,21 @@ extern "C" {
|
||||
@@ -107,15 +104,21 @@ extern "C" {
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
#ifdef __mips__
|
||||
/* Include definitions of the ABI currently in use. */
|
||||
#ifdef __ANDROID__
|
||||
@@ -4859,6 +4862,48 @@ struct kernel_statfs {
|
||||
@@ -4021,6 +4024,48 @@ struct kernel_statfs {
|
||||
#pragma pop_macro("pwrite64")
|
||||
#pragma pop_macro("getdents64")
|
||||
|
||||
103
ugene-43.0-git-plgins-smith_waterman-nonsse2-arch.patch
Normal file
103
ugene-43.0-git-plgins-smith_waterman-nonsse2-arch.patch
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
--- ugene-40.1/src/plugins/smith_waterman/src/SWAlgorithmPlugin.cpp.sse_2 2021-11-11 15:42:19.590500062 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SWAlgorithmPlugin.cpp 2021-11-11 15:42:26.384496818 +0900
|
||||
@@ -99,9 +99,11 @@
|
||||
par->registerAlgorithm(new SWPairwiseAlignmentAlgorithm());
|
||||
regDependedIMPLFromOtherPlugins();
|
||||
|
||||
+#if defined (__SSE2__)
|
||||
coreLog.trace("Registering SSE2 SW implementation");
|
||||
swar->registerFactory(new SWTaskFactory(SW_sse2), QString("SSE2"));
|
||||
par->getAlgorithm("Smith-Waterman")->addAlgorithmRealization(new PairwiseAlignmentSmithWatermanTaskFactory(SW_sse2), new PairwiseAlignmentSmithWatermanGUIExtensionFactory(SW_sse2), "SSE2");
|
||||
+#endif
|
||||
|
||||
this->connect(AppContext::getPluginSupport(), SIGNAL(si_allStartUpPluginsLoaded()), SLOT(regDependedIMPLFromOtherPlugins()));
|
||||
}
|
||||
--- ugene-40.1/src/plugins/smith_waterman/src/SWAlgorithmTask.cpp.sse_2 2021-11-11 15:42:19.590500062 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SWAlgorithmTask.cpp 2021-11-11 15:46:26.960369309 +0900
|
||||
@@ -181,6 +181,7 @@
|
||||
sWatermanConfig.sqnc.left(c.chunkSize * c.nThreads),
|
||||
sWatermanConfig.resultView);
|
||||
break;
|
||||
+#ifdef __SSE2__
|
||||
case SW_sse2:
|
||||
neededRam = SmithWatermanAlgorithmSSE2::estimateNeededRamAmount(sWatermanConfig.ptrn,
|
||||
sWatermanConfig.sqnc.left(c.chunkSize * c.nThreads),
|
||||
@@ -189,6 +190,7 @@
|
||||
minScore,
|
||||
maxScore,
|
||||
sWatermanConfig.resultView);
|
||||
+#endif
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
@@ -267,7 +269,12 @@
|
||||
|
||||
SmithWatermanAlgorithm* sw = nullptr;
|
||||
if (algType == SW_sse2) {
|
||||
+#if defined(__SSE2__)
|
||||
sw = new SmithWatermanAlgorithmSSE2;
|
||||
+#else
|
||||
+ coreLog.error("SSE2 was not enabled in this build");
|
||||
+ return;
|
||||
+#endif
|
||||
} else if (algType == SW_cuda) {
|
||||
#ifdef SW2_BUILD_WITH_CUDA
|
||||
sw = new SmithWatermanAlgorithmCUDA;
|
||||
@@ -581,7 +588,11 @@
|
||||
|
||||
SmithWatermanAlgorithm* sw = nullptr;
|
||||
if (algType == SW_sse2) {
|
||||
+#if defined(__SSE2__)
|
||||
sw = new SmithWatermanAlgorithmSSE2;
|
||||
+#else
|
||||
+ coreLog.error("SSE2 was not enabled in this build");
|
||||
+#endif
|
||||
} else if (algType == SW_cuda) {
|
||||
#ifdef SW2_BUILD_WITH_CUDA
|
||||
sw = new SmithWatermanAlgorithmCUDA;
|
||||
@@ -745,6 +756,7 @@
|
||||
sqnc->left(c.chunkSize * c.nThreads),
|
||||
SmithWatermanSettings::MULTIPLE_ALIGNMENT);
|
||||
break;
|
||||
+#ifdef __SSE2__
|
||||
case SW_sse2:
|
||||
neededRam = SmithWatermanAlgorithmSSE2::estimateNeededRamAmount(*ptrn,
|
||||
sqnc->left(c.chunkSize * c.nThreads),
|
||||
@@ -753,6 +765,7 @@
|
||||
minScore,
|
||||
maxScore,
|
||||
SmithWatermanSettings::MULTIPLE_ALIGNMENT);
|
||||
+#endif
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
--- ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.cpp.sse_2 2021-11-11 15:42:19.591500062 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.cpp 2021-11-11 15:42:26.385496818 +0900
|
||||
@@ -19,6 +19,7 @@
|
||||
* MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
+#if defined(__SSE2__)
|
||||
#include <emmintrin.h>
|
||||
#include <iostream>
|
||||
|
||||
@@ -1210,3 +1211,4 @@
|
||||
}
|
||||
|
||||
} // namespace U2
|
||||
+#endif
|
||||
--- ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.h.sse_2 2021-11-11 15:42:19.592500061 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.h 2021-11-11 15:42:26.385496818 +0900
|
||||
@@ -22,6 +22,7 @@
|
||||
#ifndef _SMITHWATERMANALGORITHM_SSE2_H
|
||||
#define _SMITHWATERMANALGORITHM_SSE2_H
|
||||
|
||||
+#if defined(__SSE2__)
|
||||
#include <emmintrin.h>
|
||||
|
||||
#include "SmithWatermanAlgorithm.h"
|
||||
@@ -55,3 +56,4 @@
|
||||
} // namespace U2
|
||||
|
||||
#endif
|
||||
+#endif
|
||||
17
ugene-43.x-wrong-elif-SendReportDialog.patch
Normal file
17
ugene-43.x-wrong-elif-SendReportDialog.patch
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
--- ugene-43.0/src/ugenem/src/SendReportDialog.cpp.elif 2022-08-17 15:55:45.936686547 +0900
|
||||
+++ ugene-43.0/src/ugenem/src/SendReportDialog.cpp 2022-08-17 20:56:02.123046050 +0900
|
||||
@@ -497,11 +497,11 @@
|
||||
QString ReportSender::getArchSuffix() const {
|
||||
#ifdef Q_PROCESSOR_X86_64
|
||||
return " x64";
|
||||
-#elif Q_PROCESSOR_X86_32
|
||||
+#elif defined(Q_PROCESSOR_X86_32)
|
||||
return " x86";
|
||||
-#elif Q_PROCESSOR_ARM_64
|
||||
+#elif defined(Q_PROCESSOR_ARM_64)
|
||||
return " arm-64";
|
||||
-#elif Q_PROCESSOR_ARM_32
|
||||
+#elif defined(Q_PROCESSOR_ARM_32)
|
||||
return " arm-32";
|
||||
#else
|
||||
return " unknown-arch";
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
--- ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.cpp.sse_2 2021-11-11 15:42:19.591500062 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.cpp 2021-11-11 15:42:26.385496818 +0900
|
||||
@@ -23,6 +23,7 @@
|
||||
* MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
+#if defined(__SSE2__)
|
||||
#include <emmintrin.h>
|
||||
#include <iostream>
|
||||
|
||||
@@ -1214,3 +1215,4 @@
|
||||
}
|
||||
|
||||
} // namespace U2
|
||||
+#endif
|
||||
--- ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.h.sse_2 2021-11-11 15:42:19.592500061 +0900
|
||||
+++ ugene-40.1/src/plugins/smith_waterman/src/SmithWatermanAlgorithmSSE2.h 2021-11-11 15:42:26.385496818 +0900
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#if defined(__SSE2__)
|
||||
#include <emmintrin.h>
|
||||
|
||||
#include "SmithWatermanAlgorithm.h"
|
||||
@@ -52,3 +53,4 @@
|
||||
};
|
||||
|
||||
} // namespace U2
|
||||
+#endif
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
--- ugene-49.1/src/plugins_3rdparty/ball/src/include/BALL/DATATYPE/hashGrid.h.orig 2023-11-26 02:17:11.000000000 +0900
|
||||
+++ ugene-49.1/src/plugins_3rdparty/ball/src/include/BALL/DATATYPE/hashGrid.h 2024-01-22 16:42:22.536722206 +0900
|
||||
@@ -37,7 +37,7 @@ namespace BALL
|
||||
{
|
||||
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;
|
||||
--- ugene-49.1/src/plugins_3rdparty/ball/src/source/DATATYPE/hashGrid.cpp.orig 2023-11-26 02:17:11.000000000 +0900
|
||||
+++ ugene-49.1/src/plugins_3rdparty/ball/src/source/DATATYPE/hashGrid.cpp 2024-01-22 16:42:28.199724474 +0900
|
||||
@@ -9,7 +9,7 @@ namespace BALL
|
||||
{
|
||||
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 },
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
diff --git 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
|
||||
index be907d85b..820d43cf0 100644
|
||||
--- 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
|
||||
@@ -1068,8 +1068,8 @@ unsigned char *(*rans_enc_func(int do_simd, int order))
|
||||
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;
|
||||
+ ? rans_compress_O1_32x16
|
||||
+ : rans_compress_O0_32x16;
|
||||
else
|
||||
return order & 1
|
||||
? rans_compress_O1_32x16
|
||||
@@ -1091,8 +1091,8 @@ unsigned char *(*rans_dec_func(int do_simd, int order))
|
||||
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;
|
||||
+ ? rans_uncompress_O1_32x16
|
||||
+ : rans_uncompress_O0_32x16;
|
||||
else
|
||||
return order & 1
|
||||
? rans_uncompress_O1_32x16
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/src/corelibs/U2Gui/src/util/RegionSelectorController.cpp b/src/corelibs/U2Gui/src/util/RegionSelectorController.cpp
|
||||
index f052b9122..d0fdfeb0d 100644
|
||||
--- a/src/corelibs/U2Gui/src/util/RegionSelectorController.cpp
|
||||
+++ b/src/corelibs/U2Gui/src/util/RegionSelectorController.cpp
|
||||
@@ -339,7 +339,7 @@ void RegionSelectorController::connectSlots() {
|
||||
|
||||
connect(gui.startLineEdit, &QLineEdit::textEdited, this, &RegionSelectorController::sl_onRegionChanged);
|
||||
connect(gui.endLineEdit, &QLineEdit::textEdited, this, &RegionSelectorController::sl_onRegionChanged);
|
||||
- connect(gui.presetsComboBox, &QComboBox::activated, this, &RegionSelectorController::sl_onPresetChanged);
|
||||
+ connect(gui.presetsComboBox, QOverload<int>::of(&QComboBox::activated), this, &RegionSelectorController::sl_onPresetChanged);
|
||||
|
||||
if (settings.selection != nullptr) {
|
||||
connect(settings.selection, SIGNAL(si_onSelectionChanged(GSelection*)), SLOT(sl_onSelectionChanged(GSelection*)));
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
diff --git a/src/libs_3rdparty/qtscript/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h b/src/libs_3rdparty/qtscript/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
|
||||
index a4695a261..ec063f1ee 100644
|
||||
--- a/src/libs_3rdparty/qtscript/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
|
||||
+++ b/src/libs_3rdparty/qtscript/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
|
||||
@@ -407,6 +407,13 @@
|
||||
#define WTF_CPU_RISCV32 1
|
||||
#endif
|
||||
|
||||
+/* CPU(IBM z system) */
|
||||
+#if defined(__s390x__) || defined(__s390__)
|
||||
+#define WTF_CPU_S390X 1
|
||||
+#define WTF_CPU_BIG_ENDIAN 1
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
/* ==== OS() - underlying operating system; only to be used for mandated low-level services like
|
||||
virtual memory, not to choose a GUI toolkit ==== */
|
||||
|
||||
@@ -960,6 +967,8 @@
|
||||
#if !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32) && !defined(WTF_USE_JSVALUE32_64)
|
||||
#if (CPU(X86_64) && !CPU(X32) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64) || CPU(RISCV64)
|
||||
#define WTF_USE_JSVALUE64 1
|
||||
+#elif (CPU(S390X))
|
||||
+#define WTF_USE_JSVALUE64 1
|
||||
#elif CPU(ARM) || CPU(PPC64) || CPU(RISCV32)
|
||||
#define WTF_USE_JSVALUE32 1
|
||||
#elif OS(WINDOWS) && COMPILER(MINGW)
|
||||
274
ugene.spec
274
ugene.spec
|
|
@ -2,24 +2,24 @@
|
|||
|
||||
%if 0%{?use_release_branch} < 1
|
||||
# master
|
||||
%global gitdate 20251211
|
||||
%global gitcommit b50ca792f254939978f0ffd3126e3d9ab770a10a
|
||||
%global gitdate 20220815
|
||||
%global gitcommit 8b6c9d5487227e26e414d93442a5083c3e705091
|
||||
# New git commit with non-free part removed using "git filter-branch"
|
||||
%global gitcommit_free 7e674061492924b3dfbc884c4c9503ecab9887b2
|
||||
%global gitcommit_free 94307b664095fb0e88062f570c8c765d8cbf5cc5
|
||||
%else
|
||||
# currently 41.0 branch
|
||||
%global gitdate 20250313
|
||||
%global gitcommit c0dffab5a15e01c026f80cf0a7033b08112a355f
|
||||
%global gitdate 20211117
|
||||
%global gitcommit 2d776cc668bc5019452e25ecc330c88093e75c48
|
||||
# New git commit with non-free part using "git filter-branch"
|
||||
%global gitcommit_free b0631c54cc0603a88793ed5d6ee02dec196b823e
|
||||
%global gitcommit_free 02c04596cd6543ab44cc212ac1b383f825998b0e
|
||||
%endif
|
||||
|
||||
|
||||
%global shortcommit %(c=%{gitcommit}; echo ${c:0:7})
|
||||
%global git_version %{gitdate}git%{shortcommit}
|
||||
%global git_version D%{gitdate}git%{shortcommit}
|
||||
|
||||
%global tarballdate 20251211
|
||||
%global tarballtime 2210
|
||||
%global tarballdate 20220817
|
||||
%global tarballtime 1514
|
||||
|
||||
%global use_release 1
|
||||
%global use_gitbare 0
|
||||
|
|
@ -35,34 +35,33 @@
|
|||
%global GIT git
|
||||
%endif
|
||||
|
||||
%global mainver 53.0
|
||||
%global mainrel 1
|
||||
%undefine prever
|
||||
|
||||
%if 0%{?use_release} >= 1
|
||||
%global fedoraver %{mainver}%{?prever:~%{prerpmver}}
|
||||
%global fedorarel %{?prever:0.}%{mainrel}%{?prever:.%{prerpmver}}
|
||||
%endif
|
||||
%if 0%{?use_gitbare} >= 1
|
||||
%global fedoraver %{mainver}%{?git_version:^%{git_version}}
|
||||
%global fedorarel %{mainrel}.%{git_version}
|
||||
%endif
|
||||
|
||||
|
||||
Name: ugene
|
||||
Summary: Integrated bioinformatics toolkit
|
||||
|
||||
Version: %{fedoraver}
|
||||
Release: 1%{?dist}
|
||||
Version: 44.0
|
||||
Release: %{fedorarel}%{?dist}
|
||||
|
||||
#The entire source code is GPLv2+ except:
|
||||
#file src/libs_3rdparty/qtbindings_core/src/qtscriptconcurrent.h which is GPLv2
|
||||
#files in src/plugins_3rdparty/script_debuger/src/qtscriptdebug/ which are GPLv2
|
||||
# Automatically converted from old format: GPLv2+ and GPLv2 - review is highly recommended.
|
||||
License: GPL-2.0-or-later AND GPL-2.0-only
|
||||
License: GPLv2+ and GPLv2
|
||||
URL: http://ugene.net
|
||||
%if 0%{?use_release} >= 1
|
||||
#Source0: https://github.com/ugeneunipro/ugene/archive/%{mainver}.tar.gz/#/%{name}-%{mainver}.tar.gz
|
||||
#Source0: https://github.com/ugeneunipro/ugene/archive/%{version}.tar.gz/#/%{name}-%{version}.tar.gz
|
||||
# Removing non-free part
|
||||
Source0: %{name}-free-%{mainver}.tar.gz
|
||||
# Source0 is created by # env VERSION=%%{mainver} source ./%{SOURCE1}
|
||||
Source0: %{name}-free-%{version}.tar.gz
|
||||
# Source0 is created by # env VERSION=%%{version} source ./%{SOURCE1}
|
||||
%endif
|
||||
%if 0%{?use_gitbare} >= 1
|
||||
Source0: %{name}-free-%{tarballdate}T%{tarballtime}.tar.gz
|
||||
|
|
@ -71,17 +70,14 @@ Source1: create-ugene-free-tarball.sh
|
|||
Source2: create-%{name}-git-bare-tarball.sh
|
||||
# This is not installed
|
||||
Source10: ugene.wrapper
|
||||
Patch1: ugene-49.1-narrowing-for-unsigned-char.patch
|
||||
Patch3: ugene-52.1.x-RegionSelectorController-overload.patch
|
||||
# Currently distro-specific
|
||||
Patch102: ugene-44.x-libs_3rdparty-breakpad-sys_mmap_use_system_mmap.patch
|
||||
Patch102: ugene-42.x-libs_3rdparty-breakpad-sys_mmap_use_system_mmap.patch
|
||||
Patch103: ugene-40.1-libs_3rdparty-breakpad-unwind-nonsupported-arch.patch
|
||||
Patch104: ugene-47.x-plugins_3rdparty-hmm2-nosse-arch.patch
|
||||
Patch104: ugene-42.0-plugins_3rdparty-hmm2-nosse-arch.patch
|
||||
Patch105: ugene-40.1-libs_3rdparty-breakpad-arch-port.patch
|
||||
Patch106: ugene-47.x-git-plgins-smith_waterman-nonsse2-arch.patch
|
||||
Patch106: ugene-43.0-git-plgins-smith_waterman-nonsse2-arch.patch
|
||||
Patch107: ugene-40.1-qbswap-bigendian-workaround.patch
|
||||
Patch109: ugene-50.x-aarch64-neon-impl-not-yet.patch
|
||||
Patch110: ugene-52.x-s390x-platform-macro.patch
|
||||
Patch108: ugene-43.x-wrong-elif-SendReportDialog.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc-c++
|
||||
|
|
@ -93,16 +89,13 @@ BuildRequires: %{_bindir}/git
|
|||
|
||||
BuildRequires: cmake(Qt5Core)
|
||||
BuildRequires: cmake(Qt5Gui)
|
||||
BuildRequires: cmake(Qt5LinguistTools)
|
||||
BuildRequires: cmake(Qt5Network)
|
||||
BuildRequires: cmake(Qt5NetworkAuth)
|
||||
BuildRequires: cmake(Qt5PrintSupport)
|
||||
BuildRequires: cmake(Qt5Script)
|
||||
BuildRequires: cmake(Qt5ScriptTools)
|
||||
BuildRequires: cmake(Qt5Sql)
|
||||
BuildRequires: cmake(Qt5Svg)
|
||||
BuildRequires: cmake(Qt5Test)
|
||||
BuildRequires: cmake(Qt5WebSockets)
|
||||
BuildRequires: cmake(Qt5Widgets)
|
||||
BuildRequires: cmake(Qt5Xml)
|
||||
|
||||
|
|
@ -124,139 +117,102 @@ is a designer for custom bioinformatics workflows.
|
|||
%prep
|
||||
%if 0%{?use_release} >= 1
|
||||
%setup -q
|
||||
# Umm...
|
||||
sed -i.desktop ugene.pri -e '\@desktop@s|etc/share/|etc/shared/|'
|
||||
%endif
|
||||
|
||||
%if 0%{?use_gitbare} >= 1
|
||||
%setup -q -c -n %{name}-%{mainver}%{?git_version:-%{git_version}} -T -a 0
|
||||
%setup -q -c -T -a 0
|
||||
git clone ./%{name}.git/
|
||||
cd %{name}
|
||||
cp -a [A-Z]* ..
|
||||
|
||||
git checkout -b %{mainver}-fedora %{gitcommit_free}
|
||||
git checkout -b %{version}-fedora %{gitcommit_free}
|
||||
git config user.name "%{name} Fedora maintainer"
|
||||
git config user.email "%{name}-maintainers@fedoraproject.org"
|
||||
%endif
|
||||
%patch -P1 -p1 -b .narrow
|
||||
%GIT commit -m "Fix narrowing on arch where default char is unsigned" -a
|
||||
%patch -P3 -p1 -b .include
|
||||
%GIT commit -m "RegionSelectorController: specify overloaded function" -a
|
||||
%patch -P102 -p1 -b .sys_mmap -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: use C function instead of directly using syscall assemble code" -a
|
||||
%patch -P103 -p1 -b .unwind -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: workaround for arch not supporting unwind" -a
|
||||
%patch -P104 -p1 -b .sse -Z
|
||||
%GIT commit -m "plugins_3rdparty/hmm2: support architecture not supporting SSE2" -a
|
||||
%patch -P105 -p1 -b .port -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: workaround for arch not ported by the upstream" -a
|
||||
%patch -P106 -p1 -b .sse_2 -Z
|
||||
%GIT commit -m "plugins/smith_waterman: support architecture not supporting SSE2" -a
|
||||
%patch -P107 -p1 -b .char_bigen -Z
|
||||
%GIT commit -m "src/corelibs/U2Core et al.: Workaround for Qt qbswap issue on Q_BIG_ENDIAN" -a
|
||||
%if 1
|
||||
%patch -P109 -p1 -b .neon -Z
|
||||
%GIT commit -m "neon impl not yet available" -a
|
||||
%endif
|
||||
%patch -P110 -p1 -b .s390x_macro -Z
|
||||
%GIT commit -m "define s390x related macro" -a
|
||||
|
||||
# Kill system-provided 3rd-party libs
|
||||
sed -i CMakeLists.txt \
|
||||
-e '\@add_subdirectory.*libs_3rdparty/sqlite3@d' \
|
||||
-e '\@add_subdirectory.*libs_3rdparty/zlib@d' \
|
||||
%{nil}
|
||||
rm -rf src/libs_3rdparty/{sqlite3,zlib}
|
||||
rm -rf src/include/3rdparty/{sqlite3,zlib}
|
||||
%GIT rm -r -f src/libs_3rdparty/{sqlite3,zlib} || true
|
||||
%GIT rm -r -f src/include/3rdparty/{sqlite3,zlib} || true
|
||||
%GIT commit -m "kill system-provided 3rd-party libs" -a
|
||||
grep -rl --exclude-dir=.git 3rdparty/zlib/zlib.h . | \
|
||||
xargs sed -i 's|3rdparty/zlib/zlib.h|zlib.h|'
|
||||
grep -rl --exclude-dir=.git 3rdparty/sqlite3/sqlite3.h . | \
|
||||
xargs sed -i 's|3rdparty/sqlite3/sqlite3.h|sqlite3.h|'
|
||||
find . -name CMakeLists.txt | \
|
||||
xargs sed -i \
|
||||
-e 's|zlib|z|' \
|
||||
-e 's|ugenedb|sqlite3|' \
|
||||
%{nil}
|
||||
%GIT commit -m "fix system provided header path" -a
|
||||
%patch102 -p1 -b .sys_mmap -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: use C function instead of directly using syscall assemble code" -a
|
||||
%patch103 -p1 -b .unwind -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: workaround for arch not supporting unwind" -a
|
||||
%patch104 -p1 -b .sse -Z
|
||||
%GIT commit -m "plugins_3rdparty/hmm2: support architecture not supporting SSE2" -a
|
||||
%patch105 -p1 -b .port -Z
|
||||
%GIT commit -m "libs_3rdparty/breakpad: workaround for arch not ported by the upstream" -a
|
||||
%patch106 -p1 -b .sse_2 -Z
|
||||
%GIT commit -m "plugins/smith_waterman: support architecture not supporting SSE2" -a
|
||||
%patch107 -p1 -b .char_bigen -Z
|
||||
%GIT commit -m "src/corelibs/U2Core et al.: Workaround for Qt qbswap issue on Q_BIG_ENDIAN" -a
|
||||
%patch108 -p1 -b .elif -Z
|
||||
%GIT commit -m "ugenem/src/SendReportDialog.cpp: fix wrong elif usage" -a
|
||||
|
||||
sed -i.nonfree CMakeLists.txt -e '\@add_subdirectory.*plugins_3rdparty/psipred@d'
|
||||
sed -i.nonfree ugene.pro -e '\@plugins_3rdparty/psipred@d'
|
||||
%GIT commit -m "remove nonfree code" -a
|
||||
|
||||
# Remove -Werror
|
||||
sed -i CMakeLists.txt -e '\@" -Werror=@d'
|
||||
%GIT commit -m "remove -Werror" -a
|
||||
|
||||
# Enable some deprecated API
|
||||
sed -i CMakeLists.txt -e '\@QT_DISABLE_DEPRECATED_BEFORE=@s|0x050F00|0x050000|'
|
||||
%GIT commit -m "enable some deprecated API" -a
|
||||
|
||||
%build
|
||||
%if 0%{?use_gitbare} >= 1
|
||||
cd %{name}
|
||||
%endif
|
||||
|
||||
export QT_DIR=%{_libdir}/qt5
|
||||
export LD_LIBRARY_PATH=$(pwd)/%{_vpath_builddir}/dist
|
||||
|
||||
%cmake \
|
||||
-DCMAKE_SKIP_RPATH=TRUE \
|
||||
%{qmake_qt5} -r \
|
||||
PREFIX=%{_libdir}/%{name} \
|
||||
UGENE_EXCLUDE_LIST_ENABLED=1 \
|
||||
UGENE_USE_SYSTEM_SQLITE=1 \
|
||||
UGENE_USE_BUNDLED_ZLIB=0 \
|
||||
UGENE_WITHOUT_NON_FREE=1 \
|
||||
%{nil}
|
||||
%cmake_build
|
||||
|
||||
%make_build -k
|
||||
|
||||
%install
|
||||
LIBAPPDIR=%{_libdir}/%{name}
|
||||
|
||||
%if 0%{?use_gitbare} >= 1
|
||||
cd %{name}
|
||||
%endif
|
||||
make install \
|
||||
INSTALL_ROOT=%{buildroot} \
|
||||
INSTALL="install -p" \
|
||||
%{nil}
|
||||
|
||||
%cmake_install
|
||||
# Some needed files are not installed.....
|
||||
mkdir -p %{buildroot}$LIBAPPDIR
|
||||
cp -a src/_release/* %{buildroot}$LIBAPPDIR
|
||||
rm -f %{buildroot}$LIBAPPDIR/*.a
|
||||
|
||||
# Install all files manually...
|
||||
# 0. Documents
|
||||
cp -a \
|
||||
LICENSE.3rd_party.txt \
|
||||
LICENSE.txt \
|
||||
..
|
||||
|
||||
pushd %_vpath_builddir
|
||||
# 1. manually move files...
|
||||
pushd %{buildroot}
|
||||
rm -f ./$LIBAPPDIR/LICENSE*
|
||||
|
||||
# 1-0 bindir
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
install -cpm 0755 %{SOURCE10} %{buildroot}%{_bindir}/%{name}
|
||||
mkdir -p ./%{_bindir}
|
||||
install -cpm 0755 %{SOURCE10} ./%{_bindir}/%{name}
|
||||
|
||||
# 1-1 libraries
|
||||
mkdir -p %{buildroot}%{_libdir}/%{name}
|
||||
cp -a dist/* %{buildroot}%{_libdir}/%{name}/
|
||||
rm -f %{buildroot}%{_libdir}/%{name}/*.a
|
||||
# 1-1 data files
|
||||
mkdir -p ./%{_datadir}/%{name}/
|
||||
mv ./$LIBAPPDIR/data ./%{_datadir}/%{name}
|
||||
ln -sf ../../../%{_datadir}/%{name} ./$LIBAPPDIR/data
|
||||
|
||||
# Back to the top directory
|
||||
popd
|
||||
|
||||
# 1-2 data files
|
||||
mkdir -p %{buildroot}%{_datadir}/%{name}/
|
||||
cp -a data %{buildroot}%{_datadir}/%{name}
|
||||
ln -sf ../../../%{_datadir}/%{name}/data %{buildroot}%{_libdir}/%{name}/data
|
||||
|
||||
pushd ./etc/shared
|
||||
# 1-11 hicolor
|
||||
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/32x32/mimetypes/
|
||||
cp -p application-x-ugene-ext.png %{buildroot}/%{_datadir}/icons/hicolor/32x32/mimetypes/
|
||||
mkdir -p ./%{_datadir}/icons/hicolor/32x32/mimetypes/
|
||||
mv ./$LIBAPPDIR/application-x-ugene-ext.png ./%{_datadir}/icons/hicolor/32x32/mimetypes/
|
||||
|
||||
# 1-12 mime
|
||||
mkdir -p %{buildroot}%{_datadir}/mime/packages
|
||||
cp -p application-x-ugene.xml %{buildroot}/%{_datadir}/mime/packages
|
||||
mkdir -p ./%{_datadir}/mime/packages
|
||||
mv ./$LIBAPPDIR/application-x-ugene.xml ./%{_datadir}/mime/packages
|
||||
|
||||
# 1-13 man file
|
||||
mkdir -p %{buildroot}%{_mandir}/man1
|
||||
cp -p %{name}.1* %{buildroot}/%{_mandir}/man1
|
||||
mkdir -p ./%{_mandir}/man1
|
||||
mv ./$LIBAPPDIR/%{name}.1* ./%{_mandir}/man1
|
||||
|
||||
# 1-14 desktop files
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
cp -p %{name}.desktop %{buildroot}/%{_datadir}/applications/
|
||||
mkdir -p ./%{_datadir}/applications/
|
||||
mv ./$LIBAPPDIR/%{name}.desktop ./%{_datadir}/applications/
|
||||
|
||||
# 1-15 icons
|
||||
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
||||
cp -p %{name}.{png,xpm} %{buildroot}%{_datadir}/pixmaps
|
||||
mkdir -p ./%{_datadir}/pixmaps
|
||||
mv ./$LIBAPPDIR/%{name}.{png,xpm} ./%{_datadir}/pixmaps
|
||||
popd
|
||||
|
||||
%check
|
||||
|
|
@ -276,8 +232,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|||
%{_libdir}/%{name}/plugins/*.plugin
|
||||
%{_libdir}/%{name}/plugins/lib*.so
|
||||
|
||||
%{_libdir}/%{name}/transl_*.qm
|
||||
|
||||
%{_libdir}/%{name}/%{name}
|
||||
%{_libdir}/%{name}/%{name}cl
|
||||
%{_libdir}/%{name}/%{name}m
|
||||
|
|
@ -296,78 +250,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|||
%{_mandir}/man1/%{name}.1*
|
||||
|
||||
%changelog
|
||||
* Sun Nov 30 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 53.0-1
|
||||
- 53.0
|
||||
|
||||
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 52.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Fri Jul 18 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 52.1-2
|
||||
- Fix data files symlink
|
||||
|
||||
* Thu May 08 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 52.1-1
|
||||
- 52.1
|
||||
|
||||
* Fri Jan 24 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 52.0-1
|
||||
- 52.0
|
||||
|
||||
* Fri Jan 17 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 51.0-2
|
||||
- Support C23 strict function prototype
|
||||
|
||||
* Thu Sep 26 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 51.0-1
|
||||
- 51.0
|
||||
|
||||
* Wed Aug 7 2024 Miroslav Suchý <msuchy@redhat.com> - 50.0-3
|
||||
- convert license to SPDX
|
||||
|
||||
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 50.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Sun Apr 14 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 50.0-1
|
||||
- 50.0
|
||||
|
||||
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 49.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Mon Jan 22 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 49.1-2
|
||||
- Fix -Wnarrowing on non x86(-64) arch detected by gcc14
|
||||
|
||||
* Tue Nov 28 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 49.1-1
|
||||
- 49.1
|
||||
|
||||
* Thu Nov 9 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 49.0-1
|
||||
- 49.0
|
||||
|
||||
* Tue Sep 5 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 48.1-1
|
||||
- 48.1
|
||||
|
||||
* Thu Aug 10 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 48.0-1
|
||||
- 48.0
|
||||
|
||||
* Sat Jul 22 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 47.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Tue May 23 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 47.0-1
|
||||
- 47.0
|
||||
|
||||
* Fri Feb 24 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 46.0-1
|
||||
- 46.0
|
||||
|
||||
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 45.1-2.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Wed Jan 18 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 45.1-2
|
||||
- Header file inclusion fix for gcc13
|
||||
|
||||
* Sun Jan 1 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 45.1-1
|
||||
- A Happy New Year 45.1 release
|
||||
|
||||
* Tue Dec 20 2022 Florian Weimer <fweimer@redhat.com> - 45.0-2
|
||||
- Apply upstream patch to fix C99 compatibility issue
|
||||
|
||||
* Sun Nov 20 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 45.0-1
|
||||
- 45.0
|
||||
|
||||
* Sun Aug 21 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 44.0-1
|
||||
- 44.0
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue