Wykres commitów

3371 Commity (f632695131e8a5c0efa46d19736fb10521655d6c)

Autor SHA1 Wiadomość Data
Ladislav Vaiz f632695131 Android build updates for monolithic build
Android is now built as a static library.

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-09-19 07:25:08 -05:00
Nate Bargmann 9210621c75 Remove dependency on libltdl
No longer depend on libltdl from the libtool package.  The
winradio/linradio/wg313api backend still depends on libdl, but since it
is only compiled on POSIX, it will use the POSIX supplied libdl.

Update documentation to remove references to libltdl.
2013-09-18 22:58:00 -05:00
Bill Somerville ef28e435d8 Patch to allow same serial port for PTT and CAT.
Hi,

patch attached to enable the above which was partially coded but not
quite working.

73
Bill
G4WJS.

>From 9dab3a250dfad7203772df91aadf79d38c108f04 Mon Sep 17 00:00:00 2001
From: Bill Somerville <bill@classdesign.com>
Date: Fri, 6 Sep 2013 01:13:34 +0100
Subject: [PATCH] Fix using same serail port for PTT and CAT

src/rig.c was coded to allow the same serial port for PTT and
CAT but them tried to open the port twice. I have added code
to share the file descriptor in this situation.

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-09-18 12:34:20 -05:00
Steve Conklin e6889901da easycomm patch from Steve Conklin, AI4QR
The attached patch restores what I think is the original easycomm
rotator interface functionality. It eliminates the conditional code
for USE_CUSTOM_CODE and USE_TEST_CODE.

Apparently for a very long time, the easycomm back end has been build
with USE_CUSTOM_CODE hardcoded in the source file. This generated code
that issued commands not even remotely similar to what's specified in
the easycommII protocol, which is documented in the easycomm directory
for hamlib.

It appears that at some point someone used the easycomm back end to
implement some custom tests for something, and it was committed and
has been carried this way ever since.

This restored what I think is proper functionality according to the
easycomm spec.

If you are a user of the easycomm back end, or you know of any
easycomm compatible rotor controllers that can be used for testing,
let me know and I can be more thorough about this.

Notes and disclaimers:

0. The original easycomm spec author seems to be unavailable.

1. I don't think that there was valid code to parse the position data
returned from the rotor controller. What was actually getting compiled
simply set some hard-coded values. I replaced it with what I think is
called for by the spec.

2. The easycomm spec is vague about what is supposed to be returned
for any command, so I may still not be parsing position information
correctly as it comes from other easycomm controllers.

3. I wrote my own rotator controller code based upon an interpretation
of the easycomm II spec. This back end for rotctl works with my
implementation. I don't have access to any other easycomm controllers
or even know whether any exist, so I am unable to test this against
any other implementation of easycomm.

4. Even when you select EASYCOMM II as the back end, it sends commands
which are only supposed to be valid for easycomm I according to the
spec (i.e. the position set command includes uplink and downlink
frequency and mode information fields). My rotor controller handles
these, so I didn't change the position set portion of the code.

I understand if there's concern for breaking rotator control for
existing users of the easycomm back end (if any actually exist). If
this patch is too risky, I'll either rewrite my controller to use
another protocol, or add another back end for my own newly invented
protocol "ai4qrcomm" (and document it better than easycomm).

Thanks,

Steve, AI4QR

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-09-18 12:28:56 -05:00
Nate Bargmann 332a04b7cd Clean up backend Makefile.am files
Moved all backend *.h files into the SOURCES primary as Automake
documentation states all source file types should be listed.  This
causes Automake to include *.h files in rebuild rules for the targets.

Removed the '-DIN_HAMLIB' assignment from the CFLAGS primary in each
backend and assigned it to AM_CPPFLAGS in configure.ac.  The effect is
the same and it simplifies the backend Makefile.am files.

Removed all commented lines.
2013-09-16 21:51:39 -05:00
Nate Bargmann 36f5f4cf6a Revert to previous handling of getaddrinfo()
Use the system gettaddrinfo function when possible as before.  Tested on
GNU, Cygwin, MinGW on Linux, and MinGW on Windows.  Under MinGW the
replacement getaddrinfo is used.  Perhaps this is an area for
investigation to be certain MinGW really doesn't supply getaddrinfo.
This reverts some of the patches from Remi Chateauneu in commit
60019c9.  This fixes build issues encountered building the Windows
binary daily snapshots.

Enabled static library build by default at configure time.

Fixed pthread library linking for the ars backend on MinGW.
2013-09-15 19:47:49 -05:00
Nate Bargmann 6fc7bedb6e Revert INSTALL to prior Hamlib version 2013-09-09 21:46:53 -05:00
Remi Chateauneu 60019c9444 Monolitic libraries. 2013-09-08 14:56:28 +01:00
Nate Bargmann 10fc6efc67 orion.h: Quell compiler warning on MinGW
Quell the following error on MinGW:

  CC       orion.lo
In file included from ../../hamlib-3.0~git/tentec/orion.c:86:0:
../../hamlib-3.0~git/tentec/orion.h:34:0: warning: "TRUE" redefined [enabled by default]
c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/windef.h:55:0: note: this is the location of the previous definition
../../hamlib-3.0~git/tentec/orion.h:35:0: warning: "FALSE" redefined [enabled by default]
c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/windef.h:52:0: note: this is the location of the previous definition

which seemed to be caused by the values to TRUE and FALSE being enclosed
in parentheses.
2013-07-30 11:24:28 -05:00
Nate Bargmann 1fd85febee MinGW build: Fix sleep() substitution
MinGW does not natively support the POSIX sleep() function so we have
had an override that was a part of the GR_PWIN32 macro and included in
the generated config.h file.  When compiling for Windows on POSIX using
MinGW, Autotools will detect sleep() and set HAVE_SLEEP which prevented
the substitution from being included in the source.  Adding a test for
_WIN32 (set by MinGW's gcc) then caused a warning from src/network.c on
POSIX about winsock2.h needing to be included before windows.h.  As
config.h needed to be included first, the solution to break out the
substitution that includes windows.h into its own file.  This patch
provides that solution and allows the code to compile cleanly on POSIX,
using MinGW on both POSIX and Windows, and on Cygwin.
2013-07-29 12:38:22 -05:00
Nate Bargmann 977e92315e elecraft.c: Quell compiler warning of buffer size
GCC 4.8.x revealed an error in the way the destination buffer size was
calculated for storing the K3 firmware revision.  Now, instead of
declaring the array in the kenwood_priv_data structure, it is declared
as static in elecraft.c and a pointer is now assigned in the
kenwood_priv_data structure.  This allows for proper calculation of the
array size for strncpy().
2013-07-24 22:48:07 -05:00
Bill Somerville c1212b158d Patch submission for IC-756
73
Bill.

>From 5209463ba169516543e2666b8b3a98b605c362e6 Mon Sep 17 00:00:00 2001
From: Bill Somerville <g4wjs@classdesign.com>
Date: Sat, 20 Jul 2013 01:45:01 +0100
Subject: [PATCH] All IC-756 varieties have MAIN/SUB VFOs rather than A/B VFOs

In the past IC-756ProIII capabiities have been updated to use MAIN/SUB VFO
commands but as far as I can tell from the user manuals for the IC-756,
IC-756Pro, IC-756Pro2 all varieties have the MAIN/SUB VFOs and need to use
the correct VFO access sub command.

I have an IC-756 and discovered this defect via WSJT-X which as of v1.1
requires split operation setup.

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-07-20 08:14:24 -05:00
Jonny public dd5a8f58b6 ether6: New rotor backend from Jonny, DG9OAA
I have now written a new rotor control based on an Atmel ethernet board
and used with me. It works well so far.

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-07-20 08:02:12 -05:00
Nate Bargmann d992919d27 ax_python_devel.m4: Udate to serial 15
The latest AX_PYTHON_DEVEL macro from:

http://www.gnu.org/software/autoconf-archive/ax_python_devel.html#ax_python_devel

is supposed to improve Python detection on OS/X.
2013-06-04 08:42:35 -05:00
Nate Bargmann ea97c7c3e9 Preserve CFLAGS & CXXFLAGS for the configure user
The Automake manual makes it clear that certain user variables such as
CC, CFLAGS, CXXFLAGS, CPPFLAGS, and so on are to be preserved for the
user running configure.  This patch cleans up such assignments and
assures that PTHREAD_CFLAGS and so forth are applied to those targets
that require it.
2013-05-25 06:00:36 -05:00
Nate Bargmann c6b01fbd95 Correct SRCLIST variable name. 2013-05-25 05:55:45 -05:00
Nate Bargmann b9ff04abf0 Fix W2k 'freeaddrinfo' error
Trying to run the pthread enabled binaries on W2k resulted in an error
dialog with the text, "The procedure entry point freeaddrinfo could not be
located in ws2_32.dll".  A Microsoft support page
(http://support.microsoft.com/kb/955045) hints that when 'ws2tcpip.h' is
included that 'wspiapi.h' should be included as well.  Since MinGw
includes both files, this patch corrects the runtime error on W2k
2013-05-18 07:31:40 -05:00
Nate Bargmann 2d6361397b Link to Pthread-win32 library in MinGW
The AX_PTHREAD macro sets the PTHREAD_LIBS variable, however we were not
providing this variable to the needed *_LDFLAGS variable.  With the
addition of PTHREAD_LIBS, rigctld and rotctld are now multi-threaded on
MS Windows.  Tested on Windows 2000, Windows XP, and Windows 7.
2013-05-17 21:34:24 -05:00
Nate Bargmann ab9f942b17 configure.ac: Test for existence of AM_PROG_AR macro
The inclusion of AM_PROG_AR macro broke Automake 1.11.1 on Debian
Squeeze.  Now test for its existence and only call it when it is
defined.
2013-05-17 05:43:17 -05:00
Nate Bargmann ba4e6cc345 configure.ac: Quell configure warnings on Cygwin
Building on Cygwin caused warnings about unknown path to 'ar' and a more
serious looking warning about 'ws2tcpip.h'.  These have been fixed.
2013-05-16 21:33:25 -05:00
Nate Bargmann 1c1a0797bd g313.c: Correct CPP conditional
Add a #else between tests for _WIN32 and __CYGWIN__
2013-05-10 06:39:25 -05:00
Nate Bargmann df64a49428 Specify libhamlib.la dependencies 2013-05-09 22:11:01 -05:00
Nate Bargmann ca13b51a65 Specify AC_CONFIG_LIBOBJ_DIR as lib
As AC_LIBOBJ is used, make sure that the lib directory is known to the
build system.
2013-05-09 22:08:52 -05:00
Nate Bargmann 245ab86441 Quell compiler warnings on Cygwin
Quell mostly harmless warnings from the older GCC installed in Cygwin.
Produces a quiet compilation.
2013-05-09 22:06:39 -05:00
Nate Bargmann 6e104f14f2 Test for cygwin to avoid Linux specific code
Compile failed on Cygwin looking for Linux specific header files.  Add a
preprocessor test for cygwin to only compile Windows compatible code.
2013-05-09 22:02:24 -05:00
Nate Bargmann 0f2a53581b Document check and distcheck make targets
Also synchronize ldconfig configuration documentation.
2013-05-08 20:48:34 -05:00
Nate Bargmann 69c2ceb957 Set LD_LIBRARY_PATH for test programs
Setting LD_LIBRARY_PATH for testcpp and testrig in the generated test
shell scripts corrects a long-standing bug that broke 'make check'.

Add Hamlib_design.eps to allow 'make dvi' to succeed when running
'make distcheck'.
2013-05-07 22:22:07 -05:00
Nate Bargmann 2f8b6c8d51 Quell compiler warnings in test programs 2013-05-07 21:35:06 -05:00
Stephane Fillod 212f2c97b2 serial: round up VTIME
Round up the VTIME setting in case the rig timeout is less than 100 ms,
which would make the termios timeout infinite.
2013-05-07 07:59:49 +02:00
Stephane Fillod 6c370dd36d serial: fix blocking call on ports, esp. on win32
Summary from Lada:

On Win7, good testing command is:
C:\hamlib> rigctl -vvvvv -m 214 -r COM1 -s 4800 -C data_bits=8 -C
stop_bits=2 -C serial_handshake=Hardware -C timeout=1000

Behavior of this command differs on COM port. On hardware ports
(onboard, PCI NetMos, all probably 16550-compatible) rigctl freeze in
data write. It is correct, no hardware handshake is estabilished. On
FT232 USB port initialization failed by timeout. I think it is not
correct but this is not subject of this e-mail.

Looked into hamlib source and found, that timeout argument is no
longer handled. SetCommTimeouts takes timeout from c_cc[VTIME] which
is not filled.

Signed-off-by: Ladislav Vaiz <spam@nagano.cz>
2013-05-06 23:47:56 +02:00
Stephane Fillod 683cc7eedd win32termios: fix in tcflush
Under Windows, the Icom transceive messages do not get flushed
properly. Returned data is cached in windows serial buffer and
are received by hamlib as response to initial request.
Lada suggested to add PURGE_RXCLEAR flag to tcflush (lib/termios.c),
actually clearing and making the buffer empty.

Look at http://msdn.microsoft.com/en-us/library/windows/desktop/aa363428%28v=vs.85%29.aspx
PURGE_RXABORT only terminates overlapped reads but not input buffer.

Nate suggested to add the PURGE_TXCLEAR flag to the output queue as well.

Signed-off-by: Ladislav Vaiz <spam@nagano.cz>
Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-05-06 08:35:00 +02:00
Nate Bargmann d331253f42 build-win32.sh: Distribute hamlib.html
Distribute the Texinfo generated HTML manual which includes
documentation on rigctl, rotctl, rigctld, rotctld and no longer
distribute their respective PDF files in the MS Windows binary releases.
2013-04-26 22:37:16 -05:00
Ladislav Vaiz 6d4295af2c Add Android build support
Android makefile fragments are distributed as extra distribution files
by the GNU build system but are otherwise ignored.  The Android build
support is independent and does not rely on the GNU build system.

See android/README.android for more info.

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-04-26 22:31:56 -05:00
Nate Bargmann a16dd4797a gr_pwin32.m4: Replace inline sleep() function
Building libltdl recursively with MinGW failed with an error of "sleep"
being redefined.  Commenting out the sleep() definition in config.h.in
resulted in libtdl compiling but a linker failure in libyaesu as
"_sleep" was not defined.

A bit of searching reveals that the MS Windows API does not include
"sleep" and MinGW does not include it either, hence the definition in
gr_pwin32.m4 from the GNU Radio project.  Uopn finding a MinGW User
thread from 2007 that discussed this very issue, the following message
hinted that using a CPP #define to wrap Windows Sleep() may work:

http://mingw.5.n7.nabble.com/Help-where-is-the-C-language-sleep-function-tp8921p8925.html

And indeed it seems to.  Compilation is now clean with recursive libltdl
and the rest of Hamlib, but does it work?
2013-04-24 21:58:50 -05:00
Nate Bargmann 74a6e7e6b9 Build libltdl recursively instead of as a sub-project
Building libltdl recursively now eliminates the second 'configure' run
inside the libltdl directory and requires the distribution of fewer
files and quiets compilation.

Also, if the 'configure' option '--with-included-ltdl' is not passed and
a system libltdl is found, the included libltdl directory will not even
be built.  Only when the included libltdl is needed will it be built.
2013-04-22 17:29:13 -05:00
Nate Bargmann dae53864a8 doc/Makefile.am: Don't build/distribute PDF manual
Building PDF may be problematic with older texinfo tools so don't build
or distribute the PDF version of the manual.  On systems with a newer
texinfo installation, 'make pdf' will generate a print version of the
manual.
2013-04-21 19:18:57 -05:00
Nate Bargmann b3fe971c23 Merge branch 'texinfo'
Merge in initial draft of Hamlib manual written in texinfo.
Output in info, HTML, and PDF formats is supported and included
in distribution tarballs from now on.
2013-04-12 11:00:18 -05:00
Nate Bargmann 09e4e672f9 hamlib.texi: Chapter 3 draft
Initial draft of chapter 3 of the Hamlib manual.
2013-04-12 10:35:04 -05:00
Nate Bargmann 911497ba85 man page corrections 2013-03-13 15:02:43 -05:00
Nate Bargmann c7dc2059eb Split chapters from hamlib.texi
Make working with the texinfo files more manageable by splitting the
large chapters into their own files.

Actually include the texinfo files into the source distribution.
2013-03-10 21:17:44 -05:00
Gerardo Richarte 7a7813cb48 gs232b.c: Improve get_position string parsing
I've found a problem with my setup. I'm using a Yaesu G-5500 with an
arduino running:

http://blog.radioartisan.com/yaesu-rotator-computer-serial-interface/

to emulate a GS232b.

The problem is that the Elevation in rotctl was incorrectly reported,
with the least significant digit show. The problem I've found is some
incompatibility between the format of the answer and the parser. Here
I'm pasting a new version of gs232b_rot_get_position() which both solves
my issue and should be a bit more reliable to protocol differences,
while simpler than the previous.

(a white space in sscanf() matches none or any number of whitespaces, my
emulated GS232B was reporting AZ=123EL=033 with no spaces. This got
broken recently, and I haven't touched the code running in the arduino).

Signed-off-by: Nate Bargmann <n0nb@n0nb.us>
2013-03-03 20:36:28 -06:00
Nate Bargmann 61ce272911 Merge branch 'readline'
Merging branch 'readline' into master due to no complaints or other feedback.
Adds Readline capability for the command prompts in rigctl and rotctl.
2013-03-03 06:56:06 -06:00
Nate Bargmann 5f8fc0cf6e hamlib.texi: Chapter 2 draft
Initial draft of chapter 2 of the Hamlib manual.
2013-03-03 06:54:18 -06:00
Nate Bargmann 4a7e7ff103 hamlib.texi: Chapter 1 draft
Complete draft of Chapter 1, including the Hamlib-design.png image from
Martin, AA6E.
2013-02-28 12:32:30 -06:00
Nate Bargmann b223a624a4 configure.ac: Remove unused hamlibdocdir variable
The hamlibdocdir variable was not referenced anywhere in the
Makefile.in's so remove it as it is now duplicated by docdir provided by
Autotools.
2013-02-27 12:51:22 -06:00
Nate Bargmann f35f2f1919 doc/Makefile.am: distribute Texinfo HTML and PDF
Build and distribute the HTML and PDF files generated from the Texinfo
source with 'make dist'.  Also install these files with 'make install'.
2013-02-27 12:49:13 -06:00
Nate Bargmann dc7e50ba73 doc: First run at texinfo documentation
After much consideration, texinfo was chosen for the Hamlib manual.
Initially Docbook had been considered and then abandoned.  Doxygen
generated output from the source files has filled that role since but
experience has shown that more explanation would be useful.  ASCIIdoc
had been considered and while HTML and PDF outputs are possible, GNU
info style documentation seems not to be.  Texinfo provides for all
three and is easily integrated into Automake and enables version and
update variables generated by Autotools to be easily integrated into the
documentation.

The manual is released under the GNU Free Document License with no
invariant sections and no cover texts.  This meets the current Debian
Free Software Guidelines.
2013-02-24 08:04:51 -06:00
Nate Bargmann 5df1dff7e9 .gitignore: Ignore generated texinfo files
Alas, texinfo puts generated files in the source tree even during VPATH
builds, including the build-aux directory now.
2013-02-24 07:31:13 -06:00
Nate Bargmann 6cf4f62acb Add Readline option to README files 2013-02-22 21:50:53 -06:00
Nate Bargmann 7ebe65fee8 rotctl.1: Document Readline and history additions
Document Readline and history additions to rotctl along with new
-i/--read-history and -I/--save-history options.

Document use of ROTCTL_HIST_DIR environment variable to set an alternate
path for the .rotctl_history file.

Other minor edits.
2013-02-22 21:35:54 -06:00