From 23c28e84e84b7c2c1e621b6a1f75a712f59d93df Mon Sep 17 00:00:00 2001 From: Stephane Fillod Date: Sun, 21 Aug 2011 13:23:01 +0200 Subject: [PATCH] Kill RPC backends and rpc.rigd/rpc.rotd --- INSTALL | 4 ---- Makefile.am | 3 +-- NEWS | 4 ++++ README.betatester | 3 --- README.developer | 9 +++------ README.win32 | 2 +- configure.ac | 27 +++------------------------ hamlib.spec.in | 10 ---------- include/hamlib/riglist.h | 3 ++- include/hamlib/rotlist.h | 3 ++- tests/rigctl.1 | 17 ++++++----------- tests/rigmem.1 | 5 +---- tests/rigswr.1 | 3 --- tests/rotctl.1 | 17 ++++++----------- 14 files changed, 29 insertions(+), 81 deletions(-) diff --git a/INSTALL b/INSTALL index 5bd27a138..6413c1e06 100644 --- a/INSTALL +++ b/INSTALL @@ -264,10 +264,6 @@ disabled by passing `--without-tcl-binding', `--without-perl-binding', and/or '--without-python-binding'. Note that these bindings are disabled by default. - Some platfroms may have trouble compiling the RPC support (e.g. Mac OS X). -in such a case, the rpcrig and rpcrot backends may be disabled -with the `--without-rpc-backends' option. - Building static libraries can be disabled by use of the `--disable-static' option. This will reduce the installed size of Hamlib considerably. diff --git a/Makefile.am b/Makefile.am index 14026970c..0edda1fe3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -16,7 +16,7 @@ SUBDIRS = macros include lib $(subdirs) src @BACKEND_LIST@ @ROT_BACKEND_LIST@ \ # tcl, perl, and kylix subdirs are no longer distributed DIST_SUBDIRS = macros include lib $(subdirs) src c++ bindings tests doc \ icom kenwood aor yaesu dummy pcr alinco uniden tentec kachina jrc \ - rpcrig winradio easycomm fodtrack rpcrot drake rotorez \ + winradio easycomm fodtrack drake rotorez \ flexradio sartek lowe rft rs tapr kit skanti prm80 wj racal tuner \ gs232a heathkit spid ars m2 amsat @@ -50,7 +50,6 @@ dist-win32: && ../../$(top_srcdir)/configure --disable-static \ --host=i586-mingw32msvc \ --prefix=`pwd`/../_inst \ - --without-rpc-backends \ PKG_CONFIG_LIBDIR=../../$(libusb_win32_bin_path)/lib/pkgconfig \ && make $(AM_MAKEFLAGS) install mkdir -p $(zipdir)/bin $(zipdir)/lib/msvc $(zipdir)/lib/gcc $(zipdir)/include diff --git a/NEWS b/NEWS index eb7b890ff..85c7e2547 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,10 @@ Copyright (C) 2000-2011 Stephane Fillod, and others Please send Hamlib bug reports to hamlib-developer@lists.sourceforge.net +Version 1.3.0 + * Kill RPC backends and rpc.rigd/rpc.rotd + + Version 1.2.13.1 * 2011-05-29 * Conversion to Git SCM and updated README documentation for Git SCM diff --git a/README.betatester b/README.betatester index 51b15999a..7145f90ac 100644 --- a/README.betatester +++ b/README.betatester @@ -90,7 +90,6 @@ Optional, but highly recommended for a complete build: * libxml2 devel # xml2-config --version * libgd2 devel # gdlib-config --version * libusb devel # libusb-config --version (not 1.0.0!) -* RPC devel (libc-dev) # rpcgen --version N.B The libusb package is required for building most of the 'kit' backend. The older version is needed, not 1.0.0 or higher. Debian and derivatives @@ -170,8 +169,6 @@ yaesu,etc: rig backends easycomm,rotorez, sartek, etc: rotator backends dummy: virtual dummy rig and rotator, for developer's use. -rpcrig: special networked rig backend (through RPC) -rpcrot: special networked rotator backend (through RPC) lib: library for functions missing on your system libltdl: wrapper for shared module loader bindings Perl, Python, Tcl, and Visual Basic bindings diff --git a/README.developer b/README.developer index 6b3f7789b..69422f153 100644 --- a/README.developer +++ b/README.developer @@ -43,7 +43,7 @@ Hamlib also enables developers to develop professional looking GUI's towards a standard control library API, and they would not have to worry about the underlying connection towards physical hardware. -Serial (RS232) connectivity is built in as are RPC, IP (also via a socket +Serial (RS232) connectivity is built in as well as IP (also via a socket utility), and USB. Other connectivity will follow afterwards. @@ -90,8 +90,6 @@ $ tree -d -I .git ├── racal ├── rft ├── rotorez -├── rpcrig -├── rpcrot ├── rs ├── sartek ├── skanti @@ -250,7 +248,6 @@ Optional, but highly recommended: * libxml2 devel # xml2-config --version * libgd2 devel # gdlib-config --version * libusb devel # libusb-config --version (not 1.0.0!) -* RPC devel (libc-dev) # rpcgen --version N.B The libusb package is required for building most of the 'kit' backend. The older version is needed, not 1.0.0 or higher. Debian and derivatives @@ -503,8 +500,8 @@ Contributed code to the Hamlib frontend must be released under the LGPL. Contributed code to Hamlib backends must follow backend current license. Needless to say, the LGPL is the license of choice. -End user applications like rigctl, rotctl and RPC daemons should be released -under the GPL, so any contributed code must follow the license. +End user applications like rigctl, rotctl and networked daemons should be +released under the GPL, so any contributed code must follow the license. 8.2 Coding guidelines and style diff --git a/README.win32 b/README.win32 index e4ac4f6bd..0c4f83d7a 100644 --- a/README.win32 +++ b/README.win32 @@ -15,7 +15,7 @@ Cygwin is fully updated): # export CC="gcc -mno-cygwin" # export CXX="g++ -mno-cygwin" # ./autogen.sh --prefix=/usr/local --disable-static \ ---without-rpc-backends --without-tcl-binding --without-perl-binding \ +--without-tcl-binding --without-perl-binding \ --without-python-binding --build=i686-pc-cygwin --host=i686-pc-mingw32 \ --target=i686-pc-mingw32 Note: on subsequent runs you can replace ./autogen.sh with ./configure diff --git a/configure.ac b/configure.ac index 42407a871..250ebd55c 100644 --- a/configure.ac +++ b/configure.ac @@ -75,7 +75,7 @@ dnl Checks for header files. AC_HEADER_DIRENT AC_HEADER_STDC AC_CHECK_HEADERS([alloca.h argz.h malloc.h memory.h string.h strings.h]) -AC_CHECK_HEADERS([stdlib.h values.h rpc/rpc.h rpc/rpcent.h net/errno.h]) +AC_CHECK_HEADERS([stdlib.h values.h net/errno.h]) AC_CHECK_HEADERS([fcntl.h sys/ioctl.h sys/time.h sys/param.h unistd.h getopt.h errno.h]) AC_CHECK_HEADERS([sys/ioccom.h sgtty.h term.h termio.h termios.h]) AC_CHECK_HEADERS([linux/ppdev.h linux/parport.h linux/ioctl.h]) @@ -416,38 +416,19 @@ else fi AC_MSG_RESULT($cf_with_libusb) -# prepare backend dependencies before adding rpcrig and rpcrot dirs +# prepare backend dependencies # otherwise parallel 'make -jn' will fail for be in ${BACKEND_LIST} ; do BACKENDEPS="${BACKENDEPS} \$(top_builddir)/${be}/hamlib-${be}.la" done -# prepare backend dependencies before adding rpcrig and rpcrot dirs +# prepare backend dependencies # otherwise parallel 'make -jn' will fail for be in ${ROT_BACKEND_LIST} ; do ROT_BACKENDEPS="${ROT_BACKENDEPS} \$(top_builddir)/${be}/hamlib-${be}.la" done -AC_CHECK_PROG(cf_with_rpcgen, rpcgen, [yes], [no]) -AC_MSG_CHECKING(whether to build rpc backends) -# RPCRig must be the last one added to BACKEND_LIST -# because it links against other backends (build order) -if test "${ac_cv_header_rpc_rpc_h}" = "yes" -a "${cf_with_rpcgen}" = "yes"; then - cf_with_rpc=yes -else - cf_with_rpc=no -fi -AC_ARG_WITH(rpc-backends, - [ --without-rpc-backends do not build rpcrig and rpcrot backends], - [cf_with_rpc_backends=$withval], - [cf_with_rpc_backends=$cf_with_rpc]) -AC_MSG_RESULT($cf_with_rpc_backends) -if test "${cf_with_rpc_backends}" = "yes"; then - BACKEND_LIST="$BACKEND_LIST rpcrig" - ROT_BACKEND_LIST="$ROT_BACKEND_LIST rpcrot" -fi - # dlopen force or preopen self for static version ? BACKENDLNK="-dlopen force" for be in ${BACKEND_LIST} ; do @@ -526,8 +507,6 @@ gs232a/Makefile heathkit/Makefile spid/Makefile sartek/Makefile -rpcrig/Makefile -rpcrot/Makefile src/Makefile c++/Makefile bindings/Makefile diff --git a/hamlib.spec.in b/hamlib.spec.in index a9aaf2163..0090b94df 100644 --- a/hamlib.spec.in +++ b/hamlib.spec.in @@ -184,10 +184,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/hamlib-rft.la %{_libdir}/hamlib-rotorez.so %{_libdir}/hamlib-rotorez.la -%{_libdir}/hamlib-rpcrig.so -%{_libdir}/hamlib-rpcrig.la -%{_libdir}/hamlib-rpcrot.so -%{_libdir}/hamlib-rpcrot.la %{_libdir}/hamlib-sartek.so %{_libdir}/hamlib-sartek.la %{_libdir}/hamlib-skanti.so @@ -207,13 +203,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/hamlib-yaesu.so %{_libdir}/hamlib-yaesu.la %{_bindir}/rigctl -%{_sbindir}/rpc.rigd %{_mandir}/man1/rigctl.1.gz -%{_mandir}/man8/rpc.rigd.8.gz %{_bindir}/rotctl -%{_sbindir}/rpc.rotd %{_mandir}/man1/rotctl.1.gz -%{_mandir}/man8/rpc.rotd.8.gz %{_bindir}/rigmem %{_mandir}/man1/rigmem.1.gz %{_bindir}/rigswr @@ -251,8 +243,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/hamlib-racal.a %{_libdir}/hamlib-rft.a %{_libdir}/hamlib-rotorez.a -%{_libdir}/hamlib-rpcrig.a -%{_libdir}/hamlib-rpcrot.a %{_libdir}/hamlib-sartek.a %{_libdir}/hamlib-skanti.a %{_libdir}/hamlib-tapr.a diff --git a/include/hamlib/riglist.h b/include/hamlib/riglist.h index 62b7e212a..aed65c0fb 100644 --- a/include/hamlib/riglist.h +++ b/include/hamlib/riglist.h @@ -408,6 +408,7 @@ * The RPC backend can be used to connect and send commands to a rig server, * \c rpc.rigd, running on a remote machine. Using this client/server scheme, * several clients can control and monitor the same rig hardware. + * \deprecated */ #define RIG_RPC 19 #define RIG_BACKEND_RPC "rpcrig" @@ -539,7 +540,7 @@ typedef int rig_model_t; { RIG_TENTEC, RIG_BACKEND_TENTEC }, \ { RIG_ALINCO, RIG_BACKEND_ALINCO }, \ { RIG_KACHINA, RIG_BACKEND_KACHINA }, \ - { RIG_RPC, RIG_BACKEND_RPC }, \ + /* { RIG_RPC, RIG_BACKEND_RPC }, */ \ { RIG_TAPR, RIG_BACKEND_TAPR }, \ { RIG_FLEXRADIO, RIG_BACKEND_FLEXRADIO }, \ { RIG_RFT, RIG_BACKEND_RFT }, \ diff --git a/include/hamlib/rotlist.h b/include/hamlib/rotlist.h index 8754fffd8..40258b8da 100644 --- a/include/hamlib/rotlist.h +++ b/include/hamlib/rotlist.h @@ -76,6 +76,7 @@ * The RPC backend can be used to connect and send commands to a rotator server, * \c rpc.rotd, running on a remote machine. Using this client/server scheme, * several clients can control and monitor the same rotator hardware. + * \deprecated */ #define ROT_RPC 1 #define ROT_BACKEND_RPC "rpcrot" @@ -268,7 +269,7 @@ typedef int rot_model_t; */ #define ROT_BACKEND_LIST { \ { ROT_DUMMY, ROT_BACKEND_DUMMY }, \ - { ROT_RPC, ROT_BACKEND_RPC }, \ + /* { ROT_RPC, ROT_BACKEND_RPC }, */ \ { ROT_EASYCOMM, ROT_BACKEND_EASYCOMM }, \ { ROT_FODTRACK, ROT_BACKEND_FODTRACK }, \ { ROT_ROTOREZ, ROT_BACKEND_ROTOREZ }, \ diff --git a/tests/rigctl.1 b/tests/rigctl.1 index fa9cb7035..88f7634e8 100644 --- a/tests/rigctl.1 +++ b/tests/rigctl.1 @@ -2,7 +2,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH RIGCTL "1" "April 14, 2010" "Hamlib" "Radio Control Program" +.TH RIGCTL "1" "August 21, 2011" "Hamlib" "Radio Control Program" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -45,8 +45,8 @@ Here is a summary of the supported options: .B \-m, --model=id Select radio model number. See model list (use 'rigctl -l'). .sp -NB: \fBrigctl\fP (or third party software) will use rig model 1901 -when using \fBrpc.rigd\fP or rig model 2 for NET rigctl (rigctld). +NB: \fBrigctl\fP (or third party software) will use rig model 2 +for NET rigctl (rigctld). .TP .B \-r, --rig-file=device Use \fIdevice\fP as the file name of the port the radio is connected. @@ -445,14 +445,10 @@ specifying a command terminator for the 'w' command: .sp $ rigctl -m 229 -r /dev/ttyUSB0 -t';' .sp -Start \fBrigctl\fP using \fBrpc.rigd\fP and setting the frequency and mode: -.sp -$ rigctl -m 1901 -r localhost F 7253500 M LSB 0 -.sp Connect to a running \fBrigctld\fP with rig model 2 ("NET rigctl") on the -local host and specifying the TCP port: +local host and specifying the TCP port, setting frequency and mode: .sp -$ rigctl -m 2 -r localhost:4532 +$ rigctl -m 2 -r localhost:4532 F 7253500 M LSB 0 .SH DIAGNOSTICS The \fB-v\fP, \fB--verbose\fP option allows different levels of diagnostics to be output to \fBstderr\fP and correspond to -v for BUG, -vv for ERR, @@ -483,7 +479,7 @@ Written by Stephane Fillod, Nate Bargmann, and the Hamlib Group .PP . .SH COPYRIGHT -Copyright \(co 2000-2010 Stephane Fillod +Copyright \(co 2000-2011 Stephane Fillod .br Copyright \(co 2010 Nate Bargmann .br @@ -494,5 +490,4 @@ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH SEE ALSO .BR hamlib (3), -.BR rpc.rigd (8) .BR rigctld(8) diff --git a/tests/rigmem.1 b/tests/rigmem.1 index 1b75f8311..5a429a200 100644 --- a/tests/rigmem.1 +++ b/tests/rigmem.1 @@ -2,7 +2,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH RIGMEM "1" "September 13, 2009" "Hamlib" "Radio Memory Operations" +.TH RIGMEM "1" "August 21, 2011" "Hamlib" "Radio Memory Operations" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -43,9 +43,6 @@ Here is a summary of the supported options: .TP .B \-m, --model=id Select radio model number. See model list (use 'rigctl -l'). -.br -NB: \fBrigmem\fP (or third party software) will use rig model 1901 -when using \fBrpc.rigd\fP. .TP .B \-r, --rig-file=device Use \fIdevice\fP as the file name of the port the radio is connected. diff --git a/tests/rigswr.1 b/tests/rigswr.1 index b3d55ac61..d5f3a49c7 100644 --- a/tests/rigswr.1 +++ b/tests/rigswr.1 @@ -51,9 +51,6 @@ Here is a summary of the supported options: .TP .B \-m, --model=id Select radio model number. See model list (use 'rigctl -l'). -.br -NB: \fBrigswr\fP (or third party software) will use rig model 1901 -when using \fBrpc.rigd\fP. .TP .B \-r, --rig-file=device Use \fIdevice\fP as the file name of the port the radio is connected. diff --git a/tests/rotctl.1 b/tests/rotctl.1 index 93991f325..c3d790093 100644 --- a/tests/rotctl.1 +++ b/tests/rotctl.1 @@ -2,7 +2,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH ROTCTL "1" "April 25, 2010" "Hamlib" "Rotator Control Program" +.TH ROTCTL "1" "August 21, 2011" "Hamlib" "Rotator Control Program" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -45,8 +45,8 @@ Here is s summary of the supported options: .B \-m, --model=id Select rotator model number. See model list (use 'rotctl -l'). .sp -NB: \fBrotctl\fP (or third party software) will use rig model 1901 -when using \fBrpc.rotd\fP or rig model 2 for NET rotctl (rotctld). +NB: \fBrotctl\fP (or third party software) will use rig model 2 +for NET rotctl (rotctld). .TP .B \-r, --rot-file=device Use \fIdevice\fP as the file name of the port the rotator is connected. @@ -232,14 +232,10 @@ Start \fBrotctl\fP for RotorEZ using COM1: .sp $ rotctl -m 401 -r /dev/ttyS0 .sp -Start \fBrotctl\fP using \fBrpc.rotd\fP and querying the position: -.sp -$ rotctl -m 101 -r localhost \\get_pos -.sp Connect to a running \fBrotctld\fP with rotor model 2 ("NET rotctl") on the -local host and specifying the TCP port: +local host and specifying the TCP port, and querying the position: .sp -$ rotctl -m 2 -r localhost:4533 +$ rotctl -m 2 -r localhost:4533 \\get_pos .SH DIAGNOSTICS The \fB-v\fP, \fB--version\fP option allows different levels of diagnostics to be output to \fBstderr\fP and correspond to -v for BUG, -vv for ERR, @@ -269,7 +265,7 @@ Written by Stephane Fillod, Nate Bargmann, and the Hamlib Group .PP . .SH COPYRIGHT -Copyright \(co 2000-2010 Stephane Fillod +Copyright \(co 2000-2011 Stephane Fillod .br Copyright \(co 2010 Nate Bargmann .br @@ -280,6 +276,5 @@ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH SEE ALSO .BR hamlib (3), -.BR rpc.rotd (8) .BR rotctld (8)