Merge pull request #178374 from mattmelling/js8call
js8call: init at 2.2.0
This commit is contained in:
commit
71c6522eac
3 changed files with 136 additions and 0 deletions
69
pkgs/applications/radio/js8call/cmake.patch
Normal file
69
pkgs/applications/radio/js8call/cmake.patch
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
diff --git a/CMake/Modules/Findhamlib.cmake b/CMake/Modules/Findhamlib.cmake
|
||||||
|
index 1590f05..e797851 100644
|
||||||
|
--- a/CMake/Modules/Findhamlib.cmake
|
||||||
|
+++ b/CMake/Modules/Findhamlib.cmake
|
||||||
|
@@ -47,7 +47,7 @@ if (NOT PC_HAMLIB_FOUND)
|
||||||
|
|
||||||
|
# libusb-1.0 has no pkg-config file on Windows so we have to find it
|
||||||
|
# ourselves
|
||||||
|
- find_library (LIBUSB NAMES usb-1.0 PATH_SUFFIXES MinGW32/dll)
|
||||||
|
+ find_library (LIBUSB NAMES libusb-1.0 usb-1.0 PATH_SUFFIXES MinGW32/dll)
|
||||||
|
if (LIBUSB)
|
||||||
|
set (hamlib_EXTRA_LIBRARIES ${LIBUSB} ${hamlib_EXTRA_LIBRARIES})
|
||||||
|
get_filename_component (hamlib_libusb_path ${LIBUSB} PATH)
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 75b80b3..7c04265 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -558,7 +558,6 @@ find_package (FFTW3 COMPONENTS double single threads REQUIRED)
|
||||||
|
#
|
||||||
|
# libhamlib setup
|
||||||
|
#
|
||||||
|
-set (hamlib_STATIC 1)
|
||||||
|
find_package (hamlib 3 REQUIRED)
|
||||||
|
find_program (RIGCTL_EXE rigctl)
|
||||||
|
find_program (RIGCTLD_EXE rigctld)
|
||||||
|
@@ -576,6 +576,7 @@ message (STATUS "hamlib_LIBRARY_DIRS: ${hamlib_LIBRARY_DIRS}")
|
||||||
|
find_package (Qt5Widgets 5 REQUIRED)
|
||||||
|
find_package (Qt5Multimedia 5 REQUIRED)
|
||||||
|
find_package (Qt5PrintSupport 5 REQUIRED)
|
||||||
|
+find_package (Qt5SerialPort 5 REQUIRED)
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
add_definitions (-DQT_NEEDS_QTMAIN)
|
||||||
|
@@ -849,7 +850,7 @@ target_link_libraries (qcp Qt5::Widgets Qt5::PrintSupport)
|
||||||
|
add_library (wsjt_qt STATIC ${wsjt_qt_CXXSRCS} ${wsjt_qt_GENUISRCS} ${GENAXSRCS})
|
||||||
|
# set wsjtx_udp exports to static variants
|
||||||
|
target_compile_definitions (wsjt_qt PUBLIC UDP_STATIC_DEFINE)
|
||||||
|
-target_link_libraries (wsjt_qt qcp Qt5::Widgets Qt5::Network)
|
||||||
|
+target_link_libraries (wsjt_qt qcp Qt5::Widgets Qt5::Network Qt5::SerialPort)
|
||||||
|
target_include_directories (wsjt_qt BEFORE PRIVATE ${hamlib_INCLUDE_DIRS})
|
||||||
|
if (WIN32)
|
||||||
|
target_link_libraries (wsjt_qt Qt5::AxContainer Qt5::AxBase)
|
||||||
|
@@ -959,7 +960,6 @@ else ()
|
||||||
|
)
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
-qt5_use_modules (js8call SerialPort) # not sure why the interface link library syntax above doesn't work
|
||||||
|
|
||||||
|
# if (UNIX)
|
||||||
|
# if (NOT WSJT_SKIP_MANPAGES)
|
||||||
|
@@ -1292,3 +1292,5 @@ configure_file ("${PROJECT_SOURCE_DIR}/CMakeCPackOptions.cmake.in"
|
||||||
|
set (CPACK_PROJECT_CONFIG_FILE "${PROJECT_BINARY_DIR}/CMakeCPackOptions.cmake")
|
||||||
|
|
||||||
|
include (CPack)
|
||||||
|
+
|
||||||
|
+add_definitions (-DJS8_USE_HAMLIB_THREE)
|
||||||
|
diff --git a/Configuration.cpp b/Configuration.cpp
|
||||||
|
index 8258f97..63a29bb 100644
|
||||||
|
--- a/Configuration.cpp
|
||||||
|
+++ b/Configuration.cpp
|
||||||
|
@@ -160,7 +160,7 @@
|
||||||
|
#include <QFont>
|
||||||
|
#include <QFontDialog>
|
||||||
|
#include <QColorDialog>
|
||||||
|
-#include <QSerialPortInfo>
|
||||||
|
+#include <QtSerialPort/QSerialPortInfo>
|
||||||
|
#include <QScopedPointer>
|
||||||
|
#include <QDateTimeEdit>
|
||||||
|
#include <QProcess>
|
65
pkgs/applications/radio/js8call/default.nix
Normal file
65
pkgs/applications/radio/js8call/default.nix
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchFromBitbucket
|
||||||
|
, wrapQtAppsHook
|
||||||
|
, pkg-config
|
||||||
|
, hamlib
|
||||||
|
, libusb1
|
||||||
|
, cmake
|
||||||
|
, gfortran
|
||||||
|
, fftw
|
||||||
|
, fftwFloat
|
||||||
|
, qtbase
|
||||||
|
, qtmultimedia
|
||||||
|
, qtserialport
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "js8call";
|
||||||
|
version = "2.2.0";
|
||||||
|
|
||||||
|
src = fetchFromBitbucket {
|
||||||
|
owner = "widefido";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}-ga";
|
||||||
|
sha256 = "sha256-mFPhiAAibCiAkLrysAmIQalVCGd9ips2lqbAsowYprY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
wrapQtAppsHook
|
||||||
|
gfortran
|
||||||
|
pkg-config
|
||||||
|
cmake
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
hamlib
|
||||||
|
libusb1
|
||||||
|
fftw
|
||||||
|
fftwFloat
|
||||||
|
qtbase
|
||||||
|
qtmultimedia
|
||||||
|
qtserialport
|
||||||
|
];
|
||||||
|
|
||||||
|
prePatch = ''
|
||||||
|
substituteInPlace CMakeLists.txt \
|
||||||
|
--replace "/usr/share/applications" "$out/share/applications" \
|
||||||
|
--replace "/usr/share/pixmaps" "$out/share/pixmaps" \
|
||||||
|
--replace "/usr/bin/" "$out/bin"
|
||||||
|
'';
|
||||||
|
|
||||||
|
patches = [ ./cmake.patch ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Weak-signal keyboard messaging for amateur radio";
|
||||||
|
longDescription = ''
|
||||||
|
JS8Call is software using the JS8 Digital Mode providing weak signal
|
||||||
|
keyboard to keyboard messaging to Amateur Radio Operators.
|
||||||
|
'';
|
||||||
|
homepage = "http://js8call.com/";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ melling ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -27674,6 +27674,8 @@ with pkgs;
|
||||||
|
|
||||||
josm = callPackage ../applications/misc/josm { };
|
josm = callPackage ../applications/misc/josm { };
|
||||||
|
|
||||||
|
js8call = qt5.callPackage ../applications/radio/js8call { };
|
||||||
|
|
||||||
jwm = callPackage ../applications/window-managers/jwm { };
|
jwm = callPackage ../applications/window-managers/jwm { };
|
||||||
|
|
||||||
jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { };
|
jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { };
|
||||||
|
|
Loading…
Reference in a new issue