commit:     099f9640690fcd3402ce065ae1ff0062d9eeab76
Author:     Thomas Beierlein <tomjbe <AT> gentoo <DOT> org>
AuthorDate: Tue May 27 10:07:15 2025 +0000
Commit:     Thomas Beierlein <tomjbe <AT> gentoo <DOT> org>
CommitDate: Tue May 27 10:31:00 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=099f9640

media-radio/wsjtx_improved: new package, add 2.8.0

Signed-off-by: Thomas Beierlein <tomjbe <AT> gentoo.org>

 media-radio/wsjtx_improved/Manifest                |  1 +
 .../wsjtx_improved/files/wsjtx-2.2.0-werror.patch  | 11 ++++
 .../files/wsjtx-2.3.0-drop-docs.patch              | 33 ++++++++++
 media-radio/wsjtx_improved/files/wsjtx-clang.patch | 20 ++++++
 .../wsjtx_improved/files/wsjtx-fix-sound-dir.patch | 66 +++++++++++++++++++
 media-radio/wsjtx_improved/metadata.xml            | 15 +++++
 .../wsjtx_improved/wsjtx_improved-2.8.0.ebuild     | 74 ++++++++++++++++++++++
 7 files changed, 220 insertions(+)

diff --git a/media-radio/wsjtx_improved/Manifest 
b/media-radio/wsjtx_improved/Manifest
new file mode 100644
index 000000000000..dfd7f50aec29
--- /dev/null
+++ b/media-radio/wsjtx_improved/Manifest
@@ -0,0 +1 @@
+DIST wsjtx-2.8.0_improved_PLUS_250501_qt6.tgz 32956533 BLAKE2B 
d74f7daa52b1e950f12ee45c46d4e0f92b9e177a8e67156adb5961c44f1e7cf78fb25d5b1615cb446b5855f0c2af6fe17320b16a85e2e9f6cc0860f66bb853cd
 SHA512 
ec9c9415c070da39251862dc4bf07d75c42d1c1e0ad76075a045b34966148aa423a596886ca6ae7d6a8c5621ab9f8dbeae0478b692b4a361d6aaf10b2f8ebafa

diff --git a/media-radio/wsjtx_improved/files/wsjtx-2.2.0-werror.patch 
b/media-radio/wsjtx_improved/files/wsjtx-2.2.0-werror.patch
new file mode 100644
index 000000000000..dcde5b18a07a
--- /dev/null
+++ b/media-radio/wsjtx_improved/files/wsjtx-2.2.0-werror.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt   2020-07-09 12:52:57.776437846 +0200
++++ b/CMakeLists.txt   2020-07-09 12:53:16.607083283 +0200
+@@ -921,7 +921,7 @@
+ #
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra")
+ 
+-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Wall -Wextra -fexceptions 
-frtti")
++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -fexceptions -frtti")
+ 
+ if (NOT APPLE)
+   set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-pragmas")

diff --git a/media-radio/wsjtx_improved/files/wsjtx-2.3.0-drop-docs.patch 
b/media-radio/wsjtx_improved/files/wsjtx-2.3.0-drop-docs.patch
new file mode 100644
index 000000000000..3654fda2f8f1
--- /dev/null
+++ b/media-radio/wsjtx_improved/files/wsjtx-2.3.0-drop-docs.patch
@@ -0,0 +1,33 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f92d3a6..c5fb9b4 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1497,10 +1497,6 @@ if (UNIX)
+     add_subdirectory (manpages)
+     add_dependencies (wsjtx manpages)
+   endif (NOT WSJT_SKIP_MANPAGES)
+-  if (NOT APPLE)
+-    add_subdirectory (debian)
+-    add_dependencies (wsjtx debian)
+-  endif (NOT APPLE)
+ endif (UNIX)
+ 
+ #
+@@ -1567,17 +1563,6 @@ install (PROGRAMS
+   RENAME rigctlcom-wsjtx${CMAKE_EXECUTABLE_SUFFIX}
+   )
+ 
+-install (FILES
+-  README
+-  COPYING
+-  AUTHORS
+-  THANKS
+-  NEWS
+-  BUGS
+-  DESTINATION ${CMAKE_INSTALL_DOCDIR}
+-  #COMPONENT runtime
+-  )
+-
+ install (FILES
+   cty.dat
+   cty.dat_copyright.txt

diff --git a/media-radio/wsjtx_improved/files/wsjtx-clang.patch 
b/media-radio/wsjtx_improved/files/wsjtx-clang.patch
new file mode 100644
index 000000000000..bb6c97a538f6
--- /dev/null
+++ b/media-radio/wsjtx_improved/files/wsjtx-clang.patch
@@ -0,0 +1,20 @@
+--- a/CMakeLists.txt   2020-09-08 10:36:55.770304108 +0200
++++ b/CMakeLists.txt   2020-09-08 10:37:28.346406308 +0200
+@@ -1193,7 +1193,7 @@
+   if (OpenMP_C_FLAGS)
+     set_target_properties (wsjt_fort_omp
+       PROPERTIES
+-      COMPILE_FLAGS "${OpenMP_C_FLAGS}"
++      COMPILE_FLAGS "${OpenMP_Fortran_FLAGS}"
+       )
+   endif ()
+   set_target_properties (wsjt_fort_omp
+@@ -1260,7 +1260,7 @@
+     if (OpenMP_C_FLAGS)
+       set_target_properties (jt9
+         PROPERTIES
+-        COMPILE_FLAGS "${OpenMP_C_FLAGS}"
++      COMPILE_FLAGS "${OpenMP_Fortran_FLAGS}"
+         LINK_FLAGS "${OpenMP_C_FLAGS}"
+         )
+     endif ()

diff --git a/media-radio/wsjtx_improved/files/wsjtx-fix-sound-dir.patch 
b/media-radio/wsjtx_improved/files/wsjtx-fix-sound-dir.patch
new file mode 100644
index 000000000000..a51ec5431331
--- /dev/null
+++ b/media-radio/wsjtx_improved/files/wsjtx-fix-sound-dir.patch
@@ -0,0 +1,66 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a4d37ad..aaf771e 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1733,7 +1733,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/widgets/displaytext.cpp b/widgets/displaytext.cpp
+index 371e7b6..66d6b23 100755
+--- a/widgets/displaytext.cpp
++++ b/widgets/displaytext.cpp
+@@ -917,7 +917,7 @@ void DisplayText::AudioAlerts()
+ {
+     if(m_config->alert_Enabled()) {
+         QAudioDevice info(QMediaDevices::defaultAudioOutput());
+-        QString binPath = QCoreApplication::applicationDirPath();
++        QString binPath = "/usr/share/wsjtx";
+         QAudioFormat format;
+         format.setSampleRate(48000);
+         format.setChannelCount(1);
+diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp
+index 04aadde..8ba7b4c 100755
+--- a/widgets/mainwindow.cpp
++++ b/widgets/mainwindow.cpp
+@@ -2963,7 +2963,7 @@ void MainWindow::fastSink(qint64 frames)
+     QTimer::singleShot (100, [=] {                       // UR delete for 
versions without alerts
+       if ((m_config.alert_Enabled()) && (m_config.alert_DXcall()) && 
(play_DXcall) && (m_hisCall!="")) {
+         QAudioDevice info(QMediaDevices::defaultAudioOutput());
+-        QString binPath = QCoreApplication::applicationDirPath();
++        QString binPath = "/usr/share/wsjtx";
+         QAudioFormat format;
+         format.setSampleRate(48000);
+         format.setChannelCount(1);
+@@ -6475,7 +6475,7 @@ void MainWindow::readFromStdout()                        
     //readFromStdout
+         QTimer::singleShot (100, [=] {                       // UR delete for 
versions without alerts
+           if (m_config.alert_Enabled() && m_config.alert_DXcall() && 
play_DXcall && m_hisCall!="") {
+             QAudioDevice info(QMediaDevices::defaultAudioOutput());
+-            QString binPath = QCoreApplication::applicationDirPath();
++            QString binPath = "/usr/share/wsjtx";
+             QAudioFormat format;
+             format.setSampleRate(48000);
+             format.setChannelCount(1);
+@@ -9549,7 +9549,7 @@ void MainWindow::mousePressEvent(QMouseEvent *event)    
// mouse press events
+ // Testing the default audio device
+   if (ui->pbBandHopping->hasFocus() && event->button() & Qt::RightButton) {
+     QAudioDevice info(QMediaDevices::defaultAudioOutput());
+-    QString binPath = QCoreApplication::applicationDirPath();
++    QString binPath = "/usr/share/wsjtx";
+     QAudioFormat format;
+     format.setSampleRate(48000);
+     format.setChannelCount(1);
+@@ -15768,7 +15768,7 @@ void MainWindow::remove_old_files(const QString 
&directoryPath, int daysOld)
+ void MainWindow::alertQSYmessage ()
+ {
+   QAudioDevice info(QMediaDevices::defaultAudioOutput());
+-  QString binPath = QCoreApplication::applicationDirPath();
++  QString binPath = "/usr/share/wsjtx";
+   QAudioFormat format;
+   format.setSampleRate(48000);
+   format.setChannelCount(1);

diff --git a/media-radio/wsjtx_improved/metadata.xml 
b/media-radio/wsjtx_improved/metadata.xml
new file mode 100644
index 000000000000..a066d51b0a31
--- /dev/null
+++ b/media-radio/wsjtx_improved/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+<maintainer type="person">
+       <email>[email protected]</email>
+       <name>Thomas Beierlein</name>
+</maintainer>
+<maintainer type="project">
+       <email>[email protected]</email>
+       <name>Radio</name>
+</maintainer>
+<upstream>
+       <remote-id type="sourceforge">wsjt</remote-id>
+</upstream>
+</pkgmetadata>

diff --git a/media-radio/wsjtx_improved/wsjtx_improved-2.8.0.ebuild 
b/media-radio/wsjtx_improved/wsjtx_improved-2.8.0.ebuild
new file mode 100644
index 000000000000..6c36197e41ab
--- /dev/null
+++ b/media-radio/wsjtx_improved/wsjtx_improved-2.8.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake edos2unix flag-o-matic
+
+DESCRIPTION="Weak signal ham radio communication with improvements"
+HOMEPAGE="https://physics.princeton.edu//pulsar/K1JT/wsjtx.html";
+SRC_URI="https://downloads.sourceforge.net/wsjt-x-improved/wsjtx-${PV}_improved_PLUS_250501_qt6.tgz";
+
+S=${WORKDIR}/wsjtx
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="
+       !media-radio/wsjtx
+       dev-libs/boost:=[nls,python]
+       dev-qt/qtbase:6[concurrent,gui,network,sql,sqlite,widgets]
+       dev-qt/qtmultimedia:6
+       dev-qt/qtserialport:6
+       dev-qt/qtwebsockets:6
+       virtual/libusb:1
+       >=media-libs/hamlib-4.0:=
+       sci-libs/fftw:3.0=[threads,fortran]
+       virtual/fortran
+       app-text/asciidoc
+       doc? ( dev-ruby/asciidoctor )"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-qt/linguist-tools"
+
+PATCHES=(
+       "${FILESDIR}/wsjtx-2.2.0-werror.patch"
+       "${FILESDIR}/wsjtx-2.3.0-drop-docs.patch"
+       "${FILESDIR}/wsjtx-clang.patch"
+       "${FILESDIR}/wsjtx-fix-sound-dir.patch"
+)
+
+DOCS=( AUTHORS BUGS NEWS README THANKS )
+
+src_unpack() {
+       unpack ${A}
+       unpack "${WORKDIR}/wsjtx-2.8.0/src/wsjtx.tgz"
+}
+
+src_prepare() {
+       edos2unix "${S}/message_aggregator.desktop"
+       edos2unix "${S}/wsjtx.desktop"
+       edos2unix "${S}/CMakeLists.txt"
+       sed -i -e "s/COMMAND \${GZIP_EXECUTABLE}/#  COMMAND/" \
+                                                               
manpages/CMakeLists.txt || die
+       cmake_src_prepare
+}
+
+src_configure() {
+       # fails to compile with -flto (bug #860417)
+       filter-lto
+
+       local mycmakeargs=(
+               -DWSJT_GENERATE_DOCS="$(usex doc)"
+               -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}"
+       )
+       append-ldflags -no-pie
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       rm "${D}"/usr/bin/rigctl{,d,com}-wsjtx || die
+       rm "${D}"/usr/share/man/man1/rigctl{,d,com}-wsjtx.1 || die
+}

Reply via email to