Commit Graph

538 Commits

Author SHA1 Message Date
Bill Somerville b420c9f6d3
Basic support for using the Boost log library 2020-09-18 21:12:53 +01:00
Bill Somerville 0bca52d2d8
Switching to consuming Boost as external libraries 2020-09-18 18:40:14 +01:00
Bill Somerville e65caabdea
Build with Boost Log library and dependants
Requires Boost libraries to be available as an external library.

On Debian style Linux distributions:

sudo apt install boost-dev-all

On Red Hat style Linux distributions:

sudo dnf install boost-dev

On macOS install Boost from a suitable Open Source package manager,
e.g. MacPorts:

sudo port install boost

If building WSJT-X  packages on macOS for distribution  you must build
boost and  its dependants from  sources with a  suitable macports.conf
file specifying the target macOS  version (10.12 at present). To build
Boost from sources in this case:

sudo port -s install boost

On MS Windows boost must be built from sources using the correct MinGW
compilers,  i.e. the  Qt  tools  32- or  64-bit  g++  for each  target
bit-width respectively.  To  build boost something along  the lines of
the following recipe should be used:

1)     Download    the     boost    ZIP     source    archive     from
https://sourceforge.net/projects/boost/, the latest  release should be
OK, at the time of writing that was 1.74,

2) create a directory for the sources:

MKDIR C:\boost-install

and extract the boost sources there.

3) Bootstrap and  build Boost.Build. If you are building  both 32- and
64-bit  variants then  do  this  twice, each  from  the correct  MinGW
terminal  session  for  the  necessary tool-chain.  Specify  a  unique
install directory  for each variant  (--prefix=). I use C:\Tools  as a
root directory for external libraries and tools, choose whatever suits
your development environment.

CD C:\boost-install\boost_1_74_0\tools\build
bootstrap.bat gcc
b2 --prefix="C:\Tools\boost-build\MinGW32" install

CD C:\boost-install\boost_1_74_0\tools\build
bootstrap.bat gcc
b2 --prefix="C:\Tools\boost-build\MinGW64" install

4) Build Boost. If you are  building both 32- and 64-bit variants then
do this  twice, each from the  correct MinGW terminal session  for the
necessary tool-chain. Specify a unique build and install directory for
each variant (--build-dir=  and --prefix=).  I use C:\Tools  as a root
directory for external libraries and tools, choose whatever suits your
development environment.

SET Path=%Path%;C:\Tools\boost-build\MinGW32\bin
CD C:\boost-install\boost_1_74_0
b2 --build-dir="C:\boost-install\boost_1_74_0\build" ^
 --build-type=complete ^
 --prefix="C:\Tools\boost\MinGW32" ^
 toolset=gcc install

SET Path=%Path%;C:\Tools\boost-build\MinGW32\bin
CD C:\boost-install\boost_1_74_0
b2 --build-dir="C:\boost-install\boost_1_74_0\build" ^
 --build-type=complete ^
 --prefix="C:\Tools\boost\MinGW32" ^
 toolset=gcc address-model=64 install

5)  Once successfully  built  the sources  directory  and build  trees
within can be deleted. The build products are contained in the install
directories (C:\Tools\boost-build and C:\Tools\boost in my case).

6) Update  your development environment  to include the  boost headers
and libraries. In  my case I have  scripts that set up  32- and 64-bit
environments,  they need  to be  modified to  include the  appropriate
boost library  directories on  the Path  environment variable  so that
applications  linked  to Boost  libraries  can  locate the  DLLs.  For
32-bit:

SET Path=C:\Tools\boost\MinGW32\lib;%Path%

For 64-bit:

SET Path=C:\Tools\boost\MinGW64\lib;%Path%

7) To  build WSJT-X  CMake will need  to be able  to locate  the Boost
libraries. I do that using tool-chain files for each of 32- and 64-bit
in both Debug and Release configurations which are passed to the CMake
configuration  invocation using  the -DCMAKE_TOOLCHAIN_FILE=  variable
assignment.  In the  tool-chain files you need to  add the appropriate
Boost  installation  directory   to  the  CMAKE_PREFIX_PATH  variable,
something like:

set (BOOSTDIR C:/Tools/boost/MinGW32)
...
set (CMAKE_PREFIX_PATH ${BOOSTDIR} ${QTDIR} ...

adjust as needed for 32- or 64-bit variants.
2020-09-15 10:35:34 +01:00
Steven Franke 5ca81a6507
Use 3rd order polynomial fit to estimate the noise baseline. The
polynomial fit is done over 400 Hz bandwidth for T/R periods longer
than 15s, and over approx. 600 Hz (10 times the signal bandwidth) for
T/R period of 15s.
2020-08-29 19:55:23 +01:00
Bill Somerville 3d45e1128a Further Linux depedency and User Guide updates 2020-08-16 19:50:34 +01:00
Bill Somerville fb7af6c696
Further Linux dependency and install documentation updates 2020-08-16 19:11:51 +01:00
Bill Somerville 549198566b
Linux package dependency updates 2020-08-16 18:06:26 +01:00
Bill Somerville f7377e686f
Move bundled cty.dat from resources FS to installation data dir
This file is only used at start up so there is little point to keeping
it in program memory.
2020-08-14 14:47:07 +01:00
Bill Somerville 9c43668640
Break unnecessary Qt link dependencies in Fortran utilities 2020-08-08 15:03:46 +01:00
Bill Somerville 0ba5d7e1bf
More flexibility for QDateTime round/truncate routine 2020-08-07 21:31:48 +01:00
Bill Somerville 92cf7b29c2
Merge branch 'develop' into feat-fst280 2020-07-31 15:00:50 +01:00
Bill Somerville c2b835c42b
Translatable help windows 2020-07-29 18:44:34 +01:00
Bill Somerville 790fde2123
Update package dependdencies for Debian style packages 2020-07-29 11:00:42 +01:00
Bill Somerville afceaa09f0 Update packge dependencies for RPM style packages 2020-07-29 02:01:23 +01:00
Bill Somerville 9c22eb321d
Merge branch 'develop' into feat-fst280 2020-07-26 16:20:11 +01:00
Bill Somerville 7bb5a8e009
Merge branch 'develop' into feat-psk-reporter-re-work 2020-07-26 15:52:39 +01:00
Bill Somerville 2f700265b9
Merge branch 'develop' into feat-fst280 2020-07-26 10:20:55 +01:00
Steven Franke 085e63e05d Rename fst240 to fst4 in Fortran routines. 2020-07-23 12:48:50 -05:00
Joe Taylor 372651ae55 Add a simple execution timer for small blocks of code. 2020-07-22 10:43:33 -04:00
Bill Somerville 22f66795a1
Improved C/Fortran string interoperation, and fix azel.dat updates
The azel.dat file is no  longer written with future Doppler correction
information designed  for rigs  that can't do  CAT QSY  commands while
transmitting.
2020-07-20 15:15:55 +01:00
Joe Taylor cbeb81b499 Add LF/MF noise blanker capability for FST240 and FST240W. 2020-07-14 11:27:41 -04:00
Bill Somerville bcff949025
Update some missing i18n strings 2020-07-13 00:55:42 +01:00
Bill Somerville adafb89769
Install FST240 simulator 2020-07-08 00:10:48 +01:00
Bill Somerville 61a72e9d91
Merge branch 'develop' into feat-fst280 2020-07-06 23:44:00 +01:00
Bill Somerville 90e18e50de
Danish UI translation, thanks to Michael, 5P1KZX 2020-07-05 12:42:08 +01:00
Bill Somerville 74c7fade32
Disable Hamlib caching while determining rig VFO resolution 2020-07-04 22:19:59 +01:00
Steven Franke c176572ec0 Add options for sub-symbol integration for sync and symbol estimation. 2020-07-04 09:15:57 -05:00
Steven Franke 6ebb487cd5 Remove residual WSPR_LF that was causing build errors. Build ldpcsim240_74. 2020-07-01 14:40:37 -05:00
Steven Franke e8bb7e74bc Add routines for a (240,74) code. Hardwire decoder for wspr messages, for the time being. 2020-06-30 13:29:32 -05:00
Steven Franke 390884268c Wholesale change from FST280 to FST240 2020-06-27 08:53:11 -05:00
Bill Somerville af894c6039
Rename files to match class name
Avoiding case insensitive file system issues.
2020-06-21 02:15:31 +01:00
Bill Somerville b48b23450d
First iteration of optional TCP/IP client for PSK Reporter 2020-06-21 01:36:30 +01:00
Joe Taylor af9f7b21c0 Starting to implement FST280 decoder. Make Rx sequences behave as desired. 2020-06-17 10:56:18 -04:00
Bill Somerville 3424dd7aa1
Typos in source file names and missed file 2020-06-16 19:39:04 +01:00
Steven Franke 5dfb3c781b Add fst280 files to CMakeLists.txt. Doesn't build yet. 2020-06-16 12:59:22 -05:00
Bill Somerville 9c22b5c3ed
Qt v5.15 compatibility 2020-06-13 16:04:41 +01:00
Bill Somerville b9491862a1
Enable Italian UI translation 2020-06-04 23:32:29 +01:00
Bill Somerville 1b26218897
Italian UI translation, tnx Marco, PY1ZRJ 2020-06-04 23:31:49 +01:00
Bill Somerville f5a284fe54
New proposed Danish UI translation from Michael, 5P1KZX 2020-06-04 16:28:49 +01:00
Bill Somerville 27a3b4d8fa
Add pending translations as comments in language list
and fix a defect in setting up new languages.
2020-06-02 21:17:31 +01:00
Bill Somerville 0138bb9a75
Tidy up l10n and allow for override to 'en' with no translations
Passing `--language en', '-l en-US', or `-l en_US` now takes a special
action to  not load  any translations using  the current  locale. This
allows the current system UI language not to influence an translations
loaded via the command line override when the native en-US is wanted.
2020-06-01 11:12:49 +01:00
Bill Somerville 1371b71c5a
Avoid duplicate resources and ensure generic Qt UI l10n loaded 2020-05-31 14:43:01 +01:00
Bill Somerville 51f18b1faa
Chinese and HK Chinese UI translations, thanks Sze-To, VR2UPU 2020-05-31 14:24:14 +01:00
Bill Somerville 4f0c125dbe
Japanese UI translation, thanks to Oba san, JA7UDE 2020-05-31 13:44:44 +01:00
Bill Somerville 1da87fe904
Empty wsjtx_en.qm so that macOS doesn't load a secondary l10n 2020-05-30 22:01:47 +01:00
Bill Somerville e7b8c5e7c0
Remove UI languages we do not yet have translation files for 2020-05-28 23:58:03 +01:00
Bill Somerville 399baf6f83
Allow macOS 10.12 support as Qt 5.12 is OK with that 2020-05-28 11:06:07 +01:00
Bill Somerville 3a1b42a3fd
Enable UI translations to Japanese 2020-05-26 12:57:38 +01:00
Bill Somerville 0856c4298a
Use language only to identify Spanish translation files
This  allows the  Spanish UI  translation to  work, for  now, for  all
Spanish speaking locales.  If necessary we  can make it es-ES if other
translators feel it is not a good base for their Spanish variant. OTOH
if they just need to l10n a  few strings then, say for Argentina, then
they can do  that in an wsjtx_es_AR.ts and  untranslated strings there
will fall back to the  ones in wsjtx_es.ts automatically. This happens
because of teh way the application loads multiple translation files in
an order suitable for that to happen.
2020-05-26 00:01:43 +01:00
Bill Somerville 7425f13abc
Add some polish to i18n
package Qt translations so that standard buttons etc. get l10n.
2020-05-25 22:44:05 +01:00