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'.
Hamlib-3.0
Nate Bargmann 2013-05-07 21:36:38 -05:00
rodzic 2f8b6c8d51
commit 69c2ceb957
6 zmienionych plików z 1111 dodań i 25 usunięć

Wyświetl plik

@ -45,11 +45,6 @@ main directory and do the following:
$ make check
Be careful: 'make check' needs an already installed hamlib library. That
means that this step has to wait until you finished step 4 (and 5).
TODO: Fix 'make check' to work before installation.
4. Type `make install' to install the programs and any data files and
documentation. Type `make uninstall' to undo the installation.
@ -227,8 +222,8 @@ find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Win32
=====
MS Windows
==========
- Debian system with mingw32msvc cross-compiler
./configure --with-included-ltdl --host=i586-mingw32msvc

Wyświetl plik

@ -52,16 +52,20 @@ utility), and USB. Other connectivity will follow afterwards.
General Guidelines.
-------------------
0. The top level directory looks like this as of 13 Feb 2011
0. The top level directory looks like this as of 07 May 2013
(Note, it has grown considerably).
$ tree -d -I .git
.
├── adat
├── alinco
├── amsat
├── android
├── aor
├── ars
├── bindings
├── c++
├── celestron
├── doc
├── drake
├── dummy
@ -73,13 +77,13 @@ $ tree -d -I .git
├── heathkit
├── icom
├── include
   └── hamlib
└── hamlib
├── jrc
├── kachina
├── kenwood
├── kit
├── kylix
   └── tests
└── tests
├── lib
├── lowe
├── m2
@ -94,25 +98,28 @@ $ tree -d -I .git
├── rotorez
├── rs
├── sartek
├── scripts
├── skanti
├── spid
├── src
├── tapr
├── tentec
├── tests
│   ├── config
│   ├── rigctl.test
│   ├── testbcd.test
│   ├── testfreq.test
│   └── testloc.test
│ ├── config
│ ├── rigctl.test
│ ├── testbcd.test
│ ├── testfreq.test
│ └── testloc.test
├── ts7400
│ └── include
├── tuner
├── uniden
├── winradio
   └── linradio
└── linradio
├── wj
└── yaesu
56 directories
61 directories
1. Building
@ -123,12 +130,12 @@ file. This document introduces hacking the code of Hamlib.
1.1 Obtaining sources: git clone
git clone git://hamlib.git.sourceforge.net/gitroot/hamlib/hamlib
git clone git://git.code.sf.net/p/hamlib/code hamlib
The clone has to only be done the first time.
After the initial clone, whenever you want to update your local
repository, issue the following command in the root directory of hamlib.
repository, issue the following command in the root directory of Hamlib:
git pull
@ -138,6 +145,10 @@ combines two Git commands, fetch and merge into one that will first check
for conflicting changes between your local repository and the remote
(origin) repository and will not apply any changes if conflicts are found.
A pull can be restricted to just a single branch if desired:
git pull origin master
1.1.1 Obtaining more info on Git
@ -239,7 +250,8 @@ distributions may differ).
* libtool 2.2.6b+ # libtool --version
* libltdl-dev 2.2.6b+
* pkg-config 0.25 # pkg-config --version
* Git for connection to hamlib.git.sourceforge.net
* Git for connection to git.code.sf.net/p/hamlib/code
* texinfo 4.13a # makeinfo --version
N.B. Hamlib requires libtool >= 2.2.6b in compliance with CVE-2009-3736.
@ -253,6 +265,7 @@ Optional, but highly recommended:
* libgd2 devel # gdlib-config --version
* libusb devel # libusb-config --version (not 1.0.0!)
* libreadline devel # ver 5.2 or newer
* texlive # 5.1 tested with 'make distcheck'
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
@ -297,7 +310,7 @@ following in the same parent directory of hamlib:
Note: In the examples above, passing the CFLAGS environment variable is
optional.
This will keep the binary output files seperate from the source tree and aid
This will keep the binary output files separate from the source tree and aid
in development by reducing clutter in the source tree.
Once you've run `autogen.sh', make sure you've got some recent config.guess
@ -362,13 +375,14 @@ So far, Hamlib has been tested successfully under the following systems:
* Debian i386 (plus derivatives--Ubuntu, etc.)
* Debian sid mipsel
* Raspbian armhf (Raspberry Pi Debian derivative)
* RedHat i386
* Linux ppc
* Slackware i386
* FreeBSD & NetBSD
* Solaris 2.6
* Mac OS X
* win32: Cygwin, Mingw
* MS Windows: Cygwin, Mingw
2. How to add a new backend
@ -556,6 +570,15 @@ Portability issues to watch:
* printf/scanf of 64bit int: use PRIll and SCNll
* printf/scanf of freq_t: use PRIfreq and SCNfreq
Testing:
* The acid test for the build system is 'make distcheck' which will
make a distribution tarball, extract, configure, and build it in a
subdirectory, run 'make check', install it, uninstall it, and clean
it up. When all those tests pass, the GNU build system declares the
package ready for distribution. This is a good test if you have
touched the build system files or added a backend.
8.2.1 Use of rig_debug() function

Wyświetl plik

@ -5,9 +5,19 @@ libhamlib___la_LDFLAGS = -no-undefined -version-info @ABI_VERSION@:@ABI_REVISION
libhamlib___la_LIBADD = $(top_builddir)/src/libhamlib.la
check_PROGRAMS = testcpp
TESTS = testcpp
testcpp_SOURCES = testcpp.cc
testcpp_LDADD = libhamlib++.la
testcpp_LDFLAGS = @BACKENDLNK@
testcpp_DEPENDENCIES = libhamlib++.la @BACKENDEPS@
check_SCRIPTS = testcpp.sh
TESTS = $(check_SCRIPTS)
testcpp.sh:
echo 'LD_LIBRARY_PATH=$(top_builddir)/dummy/.libs ./testcpp' > testcpp.sh
chmod +x ./testcpp.sh
CLEANFILES = testcpp.sh

1058
doc/Hamlib_design.eps 100644

Plik diff jest za duży Load Diff

Wyświetl plik

@ -1,4 +1,4 @@
EXTRA_DIST = hamlib.cfg index.doxygen hamlib.css footer.html
EXTRA_DIST = hamlib.cfg index.doxygen hamlib.css footer.html Hamlib_design.eps
dist_doc_DATA = Hamlib_design.png hamlib.html

Wyświetl plik

@ -88,7 +88,7 @@ TESTS = $(check_SCRIPTS)
testrig.sh:
echo './testrig 1' > testrig.sh
echo 'LD_LIBRARY_PATH=$(top_builddir)/dummy/.libs ./testrig 1' > testrig.sh
chmod +x ./testrig.sh
testfreq.sh: