Currently, for sound files it uses:
audioPath = QCoreApplication::applicationDirPath() + "/sounds/"
which unfortunately is set on multiple places. On Linux (or at least in Fedora) it's installed the following way:
Binaries:
/usr/bin/EchoCallSim
/usr/bin/cablog
/usr/bin/echosim
/usr/bin/fcal
/usr/bin/fmeasure
/usr/bin/fmtave
/usr/bin/fst4sim
/usr/bin/ft8code
/usr/bin/ft8sim
/usr/bin/hash22calc
/usr/bin/jt4code
/usr/bin/jt65code
/usr/bin/jt9
/usr/bin/jt9code
/usr/bin/message_aggregator
/usr/bin/msk144code
/usr/bin/q65code
/usr/bin/q65sim
/usr/bin/testEchoCall
/usr/bin/udp_daemon
/usr/bin/wsjtx
/usr/bin/wsjtx_app_version
/usr/bin/wsprd
Arch independent files:
/usr/share/wsjtx/ALLCALL7.TXT
/usr/share/wsjtx/JPLEPH
/usr/share/wsjtx/cty.dat
/usr/share/wsjtx/cty.dat_copyright.txt
/usr/share/wsjtx/eclipse.txt
/usr/share/wsjtx/grid.dat
/usr/share/wsjtx/sat.dat
/usr/share/wsjtx/sounds
/usr/share/wsjtx/sounds/CQ.wav
/usr/share/wsjtx/sounds/CQZone.wav
/usr/share/wsjtx/sounds/CQZoneOnBand.wav
/usr/share/wsjtx/sounds/Continent.wav
/usr/share/wsjtx/sounds/ContinentOnBand.wav
/usr/share/wsjtx/sounds/DXCC.wav
/usr/share/wsjtx/sounds/DXCCOnBand.wav
/usr/share/wsjtx/sounds/DXcall.wav
/usr/share/wsjtx/sounds/Grid.wav
/usr/share/wsjtx/sounds/GridOnBand.wav
/usr/share/wsjtx/sounds/ITUZone.wav
/usr/share/wsjtx/sounds/ITUZoneOnBand.wav
/usr/share/wsjtx/sounds/Message.wav
/usr/share/wsjtx/sounds/MyCall.wav
/usr/share/wsjtx/sounds/Testing_long.wav
/usr/share/wsjtx/sounds/_Testing.wav
/usr/share/wsjtx/sounds/_Zone.wav
Unfortunately, the applicationDirPath() returns the executable path, in such case the /usr/bin. Also the ALLCALL7.TXT is searched in the /usr/bin/ in this case.
On linux we cannot put everything in the /usr/share/wsjtx and symlink the binaries from the /usr/bin/ because /usr/share is arch independent. Similarly, the /usr/bin or /usr/libexec are arch dependent.
It would be great if these paths could be set in the cmake without downstream patching.
Currently, for sound files it uses:
which unfortunately is set on multiple places. On Linux (or at least in Fedora) it's installed the following way:
Binaries:
Arch independent files:
Unfortunately, the
applicationDirPath()returns the executable path, in such case the/usr/bin. Also theALLCALL7.TXTis searched in the/usr/bin/in this case.On linux we cannot put everything in the
/usr/share/wsjtxand symlink the binaries from the/usr/bin/because/usr/shareis arch independent. Similarly, the/usr/binor/usr/libexecare arch dependent.It would be great if these paths could be set in the cmake without downstream patching.