hamlib/hamlib.spec

217 lines
6.1 KiB
RPMSpec
Raw Normal View History

#
# spec file for package hamlib
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define sover 4
Name: hamlib
Accepting request 1078165 from home:wkazubski:test:science - Update to version 4.5.5 (2023-04-05) * Add park to rotorez.c * Fix rig power on/off from rigctl cmd line and rigctld * Enable async mode by default to prevent WSJT-X crash on IC9700 with transceive on * Fix IC7610 get_powerstat to disable it -- cannot read power status * Fix K3 K22 command error for remote operations * Fix Gemini DX1200 gemini_set_level * Fix async I/O to not call flush * Change EX startup commands for Yaesu rigs to allow errors...Win4Yaesu not recognizing EX commands * Fix jst145 set_freq and get_freq * Restore tcflush as some odd behavior was seen that tclush fixes * Fix XG3 operations * Separate the validation cmd in newcat.c to allow rig post_write_delay to be in effect * Increase post_write to 20ms for FT710 * Add attenuator level control for TS890 * Update SMeter/SWR tables for TS890 * Add fix for TMD700 * Improve FT-857 get_vfo response when error occurs * Allow FT-857 to use cached vfo on get_vfo when error occurs reading EEPROM * Fix FTDX10 FT710 set_level AF * Fix FT-450D detection * Fix VFO A/B swapping for gpredict -- hopefully better behavior for VFO swapping rigs. Should avoid setting RX freq while TX and avoid TX freq while RX * Fix QRP QDX PTT to new TQ command due to firmware changes * Remove EX103 check for FTDX5000 * Fix K3/K3S VFOB setting of mode/width * Fix AGC level display in rigctld * Change FTDX10 to no serial handshake * Add TS2000 to has_ps exception * Add FT991 to 60M exception * Fix get_powerstat bad call in rigctl_parse.c * Really fix CM108 ptt_bitnum usage * Fix Elecraft power2mW precision/accuracy * Fix power on/off/on for Icom rigs with rigctld power_on=0 OBS-URL: https://build.opensuse.org/request/show/1078165 OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/hamlib?expand=0&rev=39
2023-04-11 08:49:44 +00:00
Version: 4.5.5
Release: 0
Summary: Run-time library to control radio transcievers and receivers
License: LGPL-2.1-only
Group: Productivity/Hamradio/Other
URL: https://hamlib.github.io/
Accepting request 1033454 from home:wkazubski:test:science - Update to version 4.5 (2022-10-30) * New rotator utility https://www.pianetaradio.it/blog/catrotator/ * Add FT-710 * Add Rohde&Schwartz EK89X receiver * Add Xeigu X5105 * Add Gemini DX-1200 HF-1K Amplifiers * Kenwood rigs should now support AI command packets * Add FT-990UNI for older 990 ROMs 1.2 and earlier * Add FT-650 * Add get_separator and set_separator and -S option for rigctld -- node-red applicability * Add GRBLTRK rotor project -- two axis rotor * enum meter_level_e is deprecated and will be removed in 4.6 * Add SDRPlay SDRUno rig -- can now use Data/Pkt in WSJTX * Add ability to use cat_string to FLRig via the "w" and "W" commands * Add -B/--mapa2b to rigctlcom Allows rigctlcom to map set_freq on VFOA to VFOB instead This will allow CW Skimmer to work with some rigs (e.g. IC7300) using FM mode on VFOA and CW mode on VFOB and split mode transmit on VFOB. Clicking on CW Skimmer will change VFOB instead of VFOA to allow working dxpeditions where the fox is staying on frequency * Add password capability to rigctld via -A switch. rigctld -A will produce a consistent shared key for any specific password that can used in \password and rig_set_password TBD The shared key can also be placed in .hamlib_settings * Asynchronous rig data output handling to support transceive and spectrum data. Mikael, OH3BHX * See new set_conf option async for some Icom rigs * Multicast UDP packet output for asynchronous data. Mikael, OH3BHX * Rig state poll routine to serve commonly used data like frequency and mode from cache. Mikael, OH3BHX * deprecated hamlib_port_t at front of rig_state structure -- new one at end of structure * New rig_send_raw to send/read raw command to rig * New RIG_LEVEL_BAND_SELECT for Yaesu rigs * New rig_get_conf2 to replace rig_get_conf buffer overflow potential * New rot_get_conf2 to reaplce rot_get_conf buffer overflow potential * Added Barrett 4050 -- not functional yet * Added TCI 1.X -- not functional yet * Added TM-V71(A) * Added IC-F8101 * Added JRC JST-145 and JST-245 * Added Xiegu X108G, G90, and X6100 * Added CODAN Envoy and NGS * Added Lab599 TX-500 * Added GOMSPACE GS100 * Deprecated: rigctl commands \set_trn (A) and \get_trn (a) as they never worked as intended * Deprecated: field rig_caps.transceive and RIG_TRN_* macros OBS-URL: https://build.opensuse.org/request/show/1033454 OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/hamlib?expand=0&rev=29
2022-11-04 18:52:26 +00:00
Source: https://github.com/Hamlib/Hamlib/archive/refs/tags/%{version}.tar.gz#/Hamlib-%{version}.tar.gz
# PATCH-FIX-OPENSUSE hamlib-3.0-perl_install.patch -- patch from Fedora
Patch0: hamlib-3.0-perl_install.patch
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: makeinfo
BuildRequires: perl
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: readline-devel
BuildRequires: swig
BuildRequires: pkgconfig(gdlib)
BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(tcl)
Requires(post): %{install_info_prereq}
Requires(preun): %{install_info_prereq}
%description
The Ham Radio Control Libraries (Hamlib) provide a programming
interface for controlling radios and other shack hardware.
It is a software layer, not a complete user application.
%package devel
Summary: Development files for hamlib, a set of radio control libraries
Group: Development/Libraries/Other
Requires: libhamlib%{sover} = %{version}
Requires: libhamlib++%{sover} = %{version}
%description devel
Hamlib provide a programming interface for controlling radios and
other shack hardware.
%package -n libhamlib++%{sover}
Summary: C++ interface of the Ham Radio Control Libraries
Group: System/Libraries
%description -n libhamlib++%{sover}
Hamlib provides a programming interface for controlling radios and
other shack hardware. It is a software layer, not a complete user
application.
%package -n libhamlib%{sover}
Summary: C interface of the Ham Radio Control Libraries
Group: System/Libraries
%description -n libhamlib%{sover}
Hamlib provides a programming interface for controlling radios and
other shack hardware. It is a software layer, not a complete user
application.
%package -n lua-Hamliblua
Summary: LUA bindings for Hamlib
Group: Development/Libraries/Other
%description -n lua-Hamliblua
Hamlib provide a programming interface for controlling radios and
other shack hardware.
%package -n python3-Hamlib
Summary: Python 3 bindings for Hamlib
Group: Development/Libraries/Python
%description -n python3-Hamlib
Hamlib provide a programming interface for controlling radios and
other shack hardware.
%package -n tcl-Hamlib
Summary: Tcl bindings for Hamlib
Group: Development/Languages/Tcl
%requires_ge tcl
%description -n tcl-Hamlib
Hamlib provide a programming interface for controlling radios and
other shack hardware.
%package -n perl-Hamlib
Summary: Perl bindings for Hamlib
Group: Development/Languages/Perl
%requires_ge perl-base
%description -n perl-Hamlib
Hamlib provide a programming interface for controlling radios and
other shack hardware.
%prep
Accepting request 1033454 from home:wkazubski:test:science - Update to version 4.5 (2022-10-30) * New rotator utility https://www.pianetaradio.it/blog/catrotator/ * Add FT-710 * Add Rohde&Schwartz EK89X receiver * Add Xeigu X5105 * Add Gemini DX-1200 HF-1K Amplifiers * Kenwood rigs should now support AI command packets * Add FT-990UNI for older 990 ROMs 1.2 and earlier * Add FT-650 * Add get_separator and set_separator and -S option for rigctld -- node-red applicability * Add GRBLTRK rotor project -- two axis rotor * enum meter_level_e is deprecated and will be removed in 4.6 * Add SDRPlay SDRUno rig -- can now use Data/Pkt in WSJTX * Add ability to use cat_string to FLRig via the "w" and "W" commands * Add -B/--mapa2b to rigctlcom Allows rigctlcom to map set_freq on VFOA to VFOB instead This will allow CW Skimmer to work with some rigs (e.g. IC7300) using FM mode on VFOA and CW mode on VFOB and split mode transmit on VFOB. Clicking on CW Skimmer will change VFOB instead of VFOA to allow working dxpeditions where the fox is staying on frequency * Add password capability to rigctld via -A switch. rigctld -A will produce a consistent shared key for any specific password that can used in \password and rig_set_password TBD The shared key can also be placed in .hamlib_settings * Asynchronous rig data output handling to support transceive and spectrum data. Mikael, OH3BHX * See new set_conf option async for some Icom rigs * Multicast UDP packet output for asynchronous data. Mikael, OH3BHX * Rig state poll routine to serve commonly used data like frequency and mode from cache. Mikael, OH3BHX * deprecated hamlib_port_t at front of rig_state structure -- new one at end of structure * New rig_send_raw to send/read raw command to rig * New RIG_LEVEL_BAND_SELECT for Yaesu rigs * New rig_get_conf2 to replace rig_get_conf buffer overflow potential * New rot_get_conf2 to reaplce rot_get_conf buffer overflow potential * Added Barrett 4050 -- not functional yet * Added TCI 1.X -- not functional yet * Added TM-V71(A) * Added IC-F8101 * Added JRC JST-145 and JST-245 * Added Xiegu X108G, G90, and X6100 * Added CODAN Envoy and NGS * Added Lab599 TX-500 * Added GOMSPACE GS100 * Deprecated: rigctl commands \set_trn (A) and \get_trn (a) as they never worked as intended * Deprecated: field rig_caps.transceive and RIG_TRN_* macros OBS-URL: https://build.opensuse.org/request/show/1033454 OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/hamlib?expand=0&rev=29
2022-11-04 18:52:26 +00:00
%autosetup -p1 -n Hamlib-%{version}
%build
autoreconf -fiv
%configure \
--with-perl-binding \
--with-tcl-binding \
--with-lua-binding \
--with-python-binding PYTHON_VERSION=%py3_ver \
--with-xml-support
%make_build
%install
%make_install
find %{buildroot} -type f \( -name '*.a' -o -name '*.la' \) -delete -print
rm %{buildroot}%{perl_vendorarch}/auto/Hamlib/.packlist
mkdir -p %{buildroot}%{_docdir}
mv %{buildroot}/%{_datadir}/doc/%{name} %{buildroot}%{_docdir}
%fdupes %{buildroot}%{python_sitearch}
%check
%make_build check
%post
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info}
%preun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info}
%post -n libhamlib++%{sover} -p /sbin/ldconfig
%post -n libhamlib%{sover} -p /sbin/ldconfig
%postun -n libhamlib++%{sover} -p /sbin/ldconfig
%postun -n libhamlib%{sover} -p /sbin/ldconfig
%files
%license LICENSE
%doc AUTHORS NEWS
%{_bindir}/rigctl
%{_bindir}/rigctld
%{_bindir}/rigmem
%{_bindir}/rigsmtr
%{_bindir}/rigswr
%{_bindir}/rotctl
%{_bindir}/rotctld
%{_bindir}/ampctl
%{_bindir}/ampctld
%{_bindir}/rigctlcom
%{_bindir}/rigtestlibusb
%{_mandir}/man1/rigctl.1%{?ext_man}
%{_mandir}/man1/rigctld.1%{?ext_man}
%{_mandir}/man1/rigmem.1%{?ext_man}
%{_mandir}/man1/rigsmtr.1%{?ext_man}
%{_mandir}/man1/rigswr.1%{?ext_man}
%{_mandir}/man1/rotctl.1%{?ext_man}
%{_mandir}/man1/rotctld.1%{?ext_man}
%{_mandir}/man1/ampctl.1%{?ext_man}
%{_mandir}/man1/ampctld.1%{?ext_man}
%{_mandir}/man1/rigctlcom.1%{?ext_man}
%{_mandir}/man7/hamlib-primer.7%{?ext_man}
%{_mandir}/man7/hamlib-utilities.7%{?ext_man}
%{_mandir}/man7/hamlib.7%{?ext_man}
%{_docdir}/hamlib
%exclude %{_docdir}/hamlib/COPYING*
%exclude %{_docdir}/hamlib/LICENSE
%files devel
%dir %{_includedir}/hamlib
%{_includedir}/hamlib/*.h
%{_datadir}/aclocal/hamlib.m4
%{_libdir}/pkgconfig/hamlib.pc
%{_libdir}/libhamlib.so
%{_libdir}/libhamlib++.so
%files -n libhamlib%{sover}
%license COPYING COPYING.LIB
%{_libdir}/libhamlib.so.%{sover}*
%files -n libhamlib++%{sover}
%license COPYING COPYING.LIB
%{_libdir}/libhamlib++.so.%{sover}*
%files -n lua-Hamliblua
%{_libdir}/lua
%files -n python3-Hamlib
%{python3_sitearch}/Hamlib.*
%{python3_sitearch}/_Hamlib.*
%{python3_sitearch}/__pycache__/Hamlib.cpython*.pyc
%files -n tcl-Hamlib
%dir %{_libdir}/tcl*/
%dir %{_libdir}/tcl*/Hamlib
%{_libdir}/tcl*/Hamlib/*
%files -n perl-Hamlib
%{perl_vendorarch}/*
%changelog