public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Richard Shaw <hobbes1069@gmail.com>
To: git-commits@fedoraproject.org
Subject: [rpms/wsjtx] f44: Update to 3.0.2.
Date: Fri, 25 Sep 2026 02:50:04 GMT [thread overview]
Message-ID: <179030460493.1.17759900125773831670.rpms-wsjtx-89b0a369aafa@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/wsjtx
Branch : f44
Commit : 89b0a369aafa5b62bf5db19104681d1f4dfa8dcc
Author : Richard Shaw <hobbes1069@gmail.com>
Date : 2026-09-24T21:26:18-05:00
Stats : +118/-139 in 7 file(s)
URL : https://src.fedoraproject.org/rpms/wsjtx/c/89b0a369aafa5b62bf5db19104681d1f4dfa8dcc?branch=f44
Log:
Update to 3.0.2.
---
diff --git a/.gitignore b/.gitignore
index e270a23..e394c5e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1 @@
-/wsjtx-*.tgz
-/wsjtx-3.0.0.tar.gz
-/wsjtx-3.0.1.tar.gz
+/wsjtx-*.tar.gz
diff --git a/sources b/sources
index c456f58..1062d3c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (wsjtx-3.0.1.tar.gz) = b1ba505f31e35908eba9f73be2995e20ba17b81b1ca16cbe13bed3f6f458bb7e8bd7f176fef83097edef3ea0823a73560cf421a8ea4b9d9e8cd8b0d31e6dd8a9
+SHA512 (wsjtx-3.0.2-src.tar.gz) = 312f444b605d68d9d64e9e7ff452496cd3cc40c66d94e38f2c801f50aaaf8a2de827fe0aa8e5412f13ecf7e0a9823af84a71e317e918f63e7f8822909b9d9186
diff --git a/wsjtx-3.0.0-path-fix.patch b/wsjtx-3.0.0-path-fix.patch
deleted file mode 100644
index 845d531..0000000
--- a/wsjtx-3.0.0-path-fix.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index cb951fd..d27c7c7 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1832,7 +1832,7 @@ install (FILES
-
- install (FILES
- ALLCALL7.TXT
-- DESTINATION ${CMAKE_INSTALL_BINDIR}
-+ DESTINATION ${CMAKE_INSTALL_DATADIR}/${CMAKE_PROJECT_NAME}
- #COMPONENT runtime
- )
-
-@@ -1845,7 +1845,7 @@ install (DIRECTORY
-
- install (DIRECTORY
- ${PROJECT_SOURCE_DIR}/sounds
-- DESTINATION ${CMAKE_INSTALL_BINDIR}
-+ DESTINATION ${CMAKE_INSTALL_DATADIR}/${CMAKE_PROJECT_NAME}
- #COMPONENT runtime
- )
-
-diff --git a/Configuration.cpp b/Configuration.cpp
-index f56139c..e896653 100644
---- a/Configuration.cpp
-+++ b/Configuration.cpp
-@@ -4979,7 +4979,7 @@ void Configuration::impl::on_voices_combo_box_currentIndexChanged (int /* index
-
- void Configuration::impl::read_voices ()
- {
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds/";
-+ QString audioPath = "/usr/share/wsjtx/sounds/";
- QString voiceList = audioPath + "voices.dat"; // load the content of voices.dat file to the voices combo box
- QFile file2 {voiceList};
- QStringList wordList;
-@@ -5023,7 +5023,7 @@ void Configuration::impl::on_pb_test_alerts_clicked (bool)
- effect->open(QIODevice::ReadOnly);
- audio->start(effect);
- #else
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds" + voicesPath_ + "/";
-+ QString audioPath = "/usr/share/wsjtx/sounds" + voicesPath_ + "/";
- QSound::play(audioPath + "Testing123.wav"); // for Linux and macOS
- #endif
- }
-diff --git a/lib/ft8var/cwfilter.f90 b/lib/ft8var/cwfilter.f90
-index 913c7e3..087bc70 100644
---- a/lib/ft8var/cwfilter.f90
-+++ b/lib/ft8var/cwfilter.f90
-@@ -17,7 +17,7 @@ subroutine cwfilter(first)
- !note that with new, larger ALLCALL7.TXT files, dimensions of various ncall arrays may need to be increased in jt65_mod9.f90
- !on 20250709 callj dim was increased from 9000 to 10000 when updated ALLCALL7.TXT file was added
- if(first) then
-- open(24,file='ALLCALL7.TXT',status='unknown') ! accepting Australian 7-char callsigns
-+ open(24,file='/usr/share/wsjtx/ALLCALL7.TXT',status='unknown') ! accepting Australian 7-char callsigns
- do i=1,MAXC
- read(24,1004,end=20) line
- 1004 format(a80)
-diff --git a/widgets/displaytext.cpp b/widgets/displaytext.cpp
-index 1e2f642..421e032 100644
---- a/widgets/displaytext.cpp
-+++ b/widgets/displaytext.cpp
-@@ -931,7 +931,7 @@ void DisplayText::AudioAlerts()
- connect(audio, SIGNAL(stateChanged(QAudio::State)), this, SLOT(handleStateChanged(QAudio::State)));
- #else
- if(m_config->alert_Enabled()) {
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds" + m_config->voicesPath() + "/";
-+ QString audioPath = "/usr/share/wsjtx/sounds" + m_config->voicesPath() + "/";
- #endif
- QFile *effect2 = new QFile(this);
- QFile *effect3 = new QFile(this);
-diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp
-index b2c399e..0cb4b55 100644
---- a/widgets/mainwindow.cpp
-+++ b/widgets/mainwindow.cpp
-@@ -3381,7 +3381,7 @@ void MainWindow::fastSink(qint64 frames)
- effect1->open(QIODevice::ReadOnly);
- audio->start(effect1);
- #else
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds" + m_config.voicesPath() + "/";
-+ QString audioPath = "/usr/share/wsjtx/sounds" + m_config.voicesPath() + "/";
- if (m_config.alert_DXcall() && play_DXcall) QSound::play(audioPath + "DXcall.wav"); // for Linux and macOS
- else if (m_config.alert_DXcall() && play_Wanted) QSound::play(audioPath + "Wanted.wav"); // for Linux and macOS
- #endif
-@@ -7208,7 +7208,7 @@ void MainWindow::readFromStdout() //readFromStdout
- effect1->open(QIODevice::ReadOnly);
- audio->start(effect1);
- #else
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds" + m_config.voicesPath() + "/";
-+ QString audioPath = "/usr/share/wsjtx/sounds" + m_config.voicesPath() + "/";
- if (m_config.alert_DXcall() && play_DXcall) QSound::play(audioPath + "DXcall.wav"); // for Linux and macOS
- else if (m_config.alert_DXcall() && play_Wanted) QSound::play(audioPath + "Wanted.wav"); // for Linux and macOS
- #endif
-@@ -10404,7 +10404,7 @@ void MainWindow::mousePressEvent(QMouseEvent *event) // mouse press events
- effect->open(QIODevice::ReadOnly);
- audio->start(effect);
- #else
-- QString audioPath = QCoreApplication::applicationDirPath() + "/sounds" + m_config.voicesPath() + "/";
-+ QString audioPath = "/usr/share/wsjtx/sounds" + m_config.voicesPath() + "/";
- QSound::play(audioPath + "Testing_long.wav"); // for Linux and macOS
- #endif
- }
-@@ -17332,7 +17332,7 @@ void MainWindow::on_actionErase_Ignore_List_triggered()
-
- void MainWindow::read_ALLCALL7()
- {
-- static QFile AllCall7File {"ALLCALL7.TXT"};
-+ static QFile AllCall7File {"/usr/share/wsjtx/ALLCALL7.TXT"};
- QTextStream AllCall7Stream(&AllCall7File);
- if(AllCall7File.open(QIODevice::ReadOnly | QIODevice::Text)) {
- while (!AllCall7Stream.atEnd()) {
-@@ -17379,11 +17379,11 @@ void MainWindow::alertQSYmessage ()
- audio = new QAudioOutput(format, this);
- connect(audio, SIGNAL(stateChanged(QAudio::State)), this, SLOT(handleStateChanged(QAudio::State)));
- QFile *effect1 = new QFile(this);
-- effect1->setFileName(QString("%1/%2").arg(binPath, "/sounds/Message.wav"));
-+ effect1->setFileName(QString("%1/%2").arg("/usr/share/wsjtx", "/sounds/Message.wav"));
- effect1->open(QIODevice::ReadOnly);
- audio->start(effect1);
- #else
- QString binPath = QCoreApplication::applicationDirPath();
-- QSound::play(binPath + "/sounds/Message.wav"); // for Linux and macOS
-+ QSound::play("/usr/share/wsjtx/sounds/Message.wav"); // for Linux and macOS
- #endif
- }
diff --git a/wsjtx-3.0.2-c_format_security.patch b/wsjtx-3.0.2-c_format_security.patch
new file mode 100644
index 0000000..4f99db3
--- /dev/null
+++ b/wsjtx-3.0.2-c_format_security.patch
@@ -0,0 +1,13 @@
+Index: wsjtx-3.0.2/map65/libm65/tmoonsub.c
+===================================================================
+--- wsjtx-3.0.2.orig/map65/libm65/tmoonsub.c
++++ wsjtx-3.0.2/map65/libm65/tmoonsub.c
+@@ -56,7 +56,7 @@ void getargs(int argc, char *argv[], int
+ /* if not right number of arguments, then print example command line */
+
+ if (argc !=5) {
+- fprintf(stderr, usage);
++ fprintf(stderr, "%s", usage);
+ exit(EXIT_FAILURE);
+ }
+
diff --git a/wsjtx-3.0.2-rename-split.patch b/wsjtx-3.0.2-rename-split.patch
new file mode 100644
index 0000000..beaaa8a
--- /dev/null
+++ b/wsjtx-3.0.2-rename-split.patch
@@ -0,0 +1,28 @@
+Index: wsjtx-3.0.2/lib/jplsubs.f
+===================================================================
+--- wsjtx-3.0.2.orig/lib/jplsubs.f
++++ wsjtx-3.0.2/lib/jplsubs.f
+@@ -533,7 +533,7 @@ C
+
+ C+++++++++++++++++++++++++
+ C
+- SUBROUTINE SPLIT_DP(TT,FR)
++ SUBROUTINE LSPLIT_DP(TT,FR)
+ C
+ C+++++++++++++++++++++++++
+ C
+@@ -754,11 +754,11 @@ C ********** MAIN ENTRY POINT ****
+ IF(ET2(1) .EQ. 0.D0) RETURN
+
+ S=ET2(1)-.5D0
+- CALL SPLIT_DP(S,PJD(1))
+- CALL SPLIT_DP(ET2(2),PJD(3))
++ CALL LSPLIT_DP(S,PJD(1))
++ CALL LSPLIT_DP(ET2(2),PJD(3))
+ PJD(1)=PJD(1)+PJD(3)+.5D0
+ PJD(2)=PJD(2)+PJD(4)
+- CALL SPLIT_DP(PJD(2),PJD(3))
++ CALL LSPLIT_DP(PJD(2),PJD(3))
+ PJD(1)=PJD(1)+PJD(3)
+
+ C ERROR RETURN FOR EPOCH OUT OF RANGE
diff --git a/wsjtx-3.0.2-sounds_path.patch b/wsjtx-3.0.2-sounds_path.patch
new file mode 100644
index 0000000..12e912e
--- /dev/null
+++ b/wsjtx-3.0.2-sounds_path.patch
@@ -0,0 +1,45 @@
+Index: wsjtx-3.0.2/CMakeLists.txt
+===================================================================
+--- wsjtx-3.0.2.orig/CMakeLists.txt
++++ wsjtx-3.0.2/CMakeLists.txt
+@@ -1939,6 +1939,8 @@ install (DIRECTORY
+
+ if (APPLE)
+ set (WSJT_SOUND_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR})
++elseif (UNIX)
++ set (WSJT_SOUND_DESTINATION ${CMAKE_INSTALL_DATADIR}/${CMAKE_PROJECT_NAME})
+ else ()
+ set (WSJT_SOUND_DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endif ()
+Index: wsjtx-3.0.2/qt_helpers.cpp
+===================================================================
+--- wsjtx-3.0.2.orig/qt_helpers.cpp
++++ wsjtx-3.0.2/qt_helpers.cpp
+@@ -7,6 +7,7 @@
+ #include <QVariant>
+ #include <QDateTime>
+ #include <QCoreApplication>
++#include <QStandardPaths> // add this with the other includes
+ #include <QDir>
+
+ QString font_as_stylesheet (QFont const& font)
+@@ -56,7 +57,18 @@ QString app_sounds_directory (QString co
+ #if defined (__APPLE__)
+ QString root {QCoreApplication::applicationDirPath () + "/../Resources/sounds"};
+ #else
+- QString root {QCoreApplication::applicationDirPath () + "/sounds"};
++ // Try Qt's standard data locations first (respects application name)
++ QString root = QStandardPaths::locate (QStandardPaths::AppDataLocation,
++ "sounds",
++ QStandardPaths::LocateDirectory);
++ // Common packaging layout (lowercase project name)
++ if (root.isEmpty ())
++ root = QStandardPaths::locate (QStandardPaths::GenericDataLocation,
++ "wsjtx/sounds",
++ QStandardPaths::LocateDirectory);
++ // Windows-style layout next to the binary
++ if (root.isEmpty ())
++ root = QCoreApplication::applicationDirPath () + "/sounds";
+ #endif
+ auto child = subdirectory;
+ while (child.startsWith (QChar {'/'}))
diff --git a/wsjtx.spec b/wsjtx.spec
index 96c60d5..31c5d23 100644
--- a/wsjtx.spec
+++ b/wsjtx.spec
@@ -3,16 +3,26 @@
%undefine _hardened_linker_errors
Name: wsjtx
-Version: 3.0.1
-Release: 2%{?dist}
+Version: 3.0.2
+Release: 1%{?dist}
Summary: Weak Signal communication by K1JT
License: GPL-3.0-or-later
-URL: https://github.com/WSJTX/wsjtx
-Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
+URL: https://wsjtx.github.io/wsjtx/index.html
+Source0: https://github.com/WSJTX/wsjtx/releases/download/v%{version}/%{name}-%{version_no_tilde}%{?rctag:-%{rctag}}-src.tar.gz
Source100: edu.princeton.physics.WSJTX.metainfo.xml
+# Sent upstream
+# https://www.mail-archive.com/wsjt-devel@lists.sourceforge.net/msg28480.html
+Patch0: wsjtx-3.0.2-rename-split.patch
+# wsjtx-3.0.2/map65/libm65/tmoonsub.c:59:5: error: format not a string literal and no format
+# https://github.com/WSJTX/wsjtx/pull/82
+Patch2: wsjtx-3.0.2-c_format_security.patch
+# Sound files were installing to /usr/bin
+# https://github.com/WSJTX/wsjtx/pull/83
+Patch3: wsjtx-3.0.2-sounds_path.patch
+
ExcludeArch: i686
BuildRequires: cmake
@@ -40,11 +50,6 @@ BuildRequires: asciidoc
BuildRequires: rubygem-asciidoctor
BuildRequires: libappstream-glib
%endif
-# Temporal fix, problem reported upstream
-# https://github.com/WSJTX/wsjtx/issues/5
-# https://www.mail-archive.com/wsjt-devel@lists.sourceforge.net/msg28480.html
-Patch: wsjtx-3.0.0-path-fix.patch
-
%description
WSJT-X is a computer program designed to facilitate basic amateur radio
@@ -55,7 +60,16 @@ from the Moon.
%prep
-%autosetup -p1
+%autosetup -p1 -n %{name}-%{version_no_tilde}
+
+%if ! 0%{?rhel} < 8
+# remove bundled boost. EL 7 is not required version.
+rm -rf boost
+%endif
+
+# convert CR + LF to LF
+dos2unix *.ui *.iss *.txt
+find ./ -type f -name '*.cpp' -exec dos2unix {} \;
%build
@@ -130,10 +144,12 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.metainfo.xml
%{_bindir}/jt9code
%{_bindir}/ft8code
%{_bindir}/message_aggregator
+%{_bindir}/map65
%{_bindir}/msk144code
%{_bindir}/qmap
%{_bindir}/q65sim
%{_bindir}/q65code
+%{_bindir}/qmap
%{_bindir}/udp_daemon
%{_bindir}/wsjtx
%{_bindir}/wsjtx_app_version
@@ -146,10 +162,13 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.metainfo.xml
%{_datadir}/applications/wsjtx.desktop
%{_datadir}/applications/message_aggregator.desktop
%{_datadir}/pixmaps/wsjtx_icon.png
-%{_datadir}/%{name}
+%{_datadir}/%{name}/
%changelog
+* Thu Sep 24 2026 Richard Shaw <hobbes1069@gmail.com> - 3.0.2-1
+- Update to 3.0.2.
+
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
reply other threads:[~2026-09-25 2:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=179030460493.1.17759900125773831670.rpms-wsjtx-89b0a369aafa@fedoraproject.org \
--to=hobbes1069@gmail.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox