Compare commits
586 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7f51f794fd | ||
|
f76bfcb8f4 | ||
|
88e52f362a | ||
|
8a4b8e3731 | ||
|
3966480fea | ||
|
115922c385 | ||
|
32dbf0f325 | ||
|
03bc7e3d08 | ||
|
49f2527fcd | ||
|
2dbc61a92e | ||
|
4dade2a709 | ||
|
7c738b161c | ||
|
4afde2a399 | ||
|
7f5f59e510 | ||
|
61608067f4 | ||
|
deac6017e3 | ||
|
d67798da56 | ||
|
ca5898bc57 | ||
|
694c3a334d | ||
|
99fca7c09e | ||
|
d2470a5379 | ||
|
638898d3a4 | ||
|
e16772c154 | ||
|
914a3af96f | ||
|
e5fc6fbd81 | ||
|
83bff3e847 | ||
|
b340b92a04 | ||
|
89a25c8a7f | ||
|
0e93251349 | ||
|
65e6f89214 | ||
|
e287ac60d5 | ||
|
5985a0d2e0 | ||
|
9864650d9a | ||
|
0a3a455937 | ||
|
e564ac2f39 | ||
|
7948561cdc | ||
|
43e1e9c095 | ||
|
811f320536 | ||
|
290ba12c93 | ||
|
6dba1f6813 | ||
|
05f88acf02 | ||
|
3e0375f6d5 | ||
|
d441dad344 | ||
|
55de2c724f | ||
|
cca47bbb50 | ||
|
8a3a246888 | ||
|
b7619e1c57 | ||
|
9b714aed45 | ||
|
c791067ea8 | ||
|
bc235856a8 | ||
|
ff3b3f4ef5 | ||
|
29f7d534e5 | ||
|
395e9e0821 | ||
|
1e5257b851 | ||
|
d26aa35969 | ||
|
24b1807a07 | ||
|
6c9dd36f8b | ||
|
1aeac6e268 | ||
|
d834c363b3 | ||
|
d988aab950 | ||
|
c50097e420 | ||
|
1baca797f6 | ||
|
6a9bba0656 | ||
|
aa28bc700d | ||
|
96cc7a550f | ||
|
4678abf091 | ||
|
276083d3e8 | ||
|
13ecf0124e | ||
|
db9ccd9ca8 | ||
|
1304926162 | ||
|
2aa2ad27da | ||
|
1975c1748c | ||
|
f882747e97 | ||
|
f1aab5c97e | ||
|
d453e164fa | ||
|
3b22d436ee | ||
|
4c1f99a7d2 | ||
|
cd38c0d6a3 | ||
|
91b83cff3b | ||
|
c333fb505c | ||
|
b897b2176d | ||
|
f7b9727ef9 | ||
|
76b4623375 | ||
|
28077752a9 | ||
|
3d3195489a | ||
|
89d7fe736f | ||
|
2f47258605 | ||
|
de4147b853 | ||
|
002f5e8af3 | ||
|
ce007419e8 | ||
|
fc82606e6e | ||
|
ab54ac7a63 | ||
|
379c802d39 | ||
|
e6eb23d8a0 | ||
|
0111ce247b | ||
|
c108f5be40 | ||
|
1074bd0105 | ||
|
a5d1f48580 | ||
|
1c8d7bdaf1 | ||
|
77b2b815b8 | ||
|
2e1411311b | ||
|
c8fed979d4 | ||
|
60869b74f9 | ||
|
88b2f29894 | ||
|
fa6a801411 | ||
|
1c6b167527 | ||
|
bafcb75313 | ||
|
e33d6e9b64 | ||
|
7e6342624c | ||
|
90ddb54371 | ||
|
356e5e42be | ||
|
c7e2a78903 | ||
|
8ff41d60fd | ||
|
5f74620406 | ||
|
7a97bbfea0 | ||
|
81bae39a22 | ||
|
596544ade7 | ||
|
fed8856e1e | ||
|
825c1d0759 | ||
|
190b8c6aeb | ||
|
0c502c59f8 | ||
|
ad46defda9 | ||
|
42a674037f | ||
|
3c9931bc59 | ||
|
cb5d921e68 | ||
|
5ae5641f99 | ||
|
b3f83c33fa | ||
|
c40da37faf | ||
|
ba673bf3a2 | ||
|
082a07d39b | ||
|
d24c552d24 | ||
|
31ab1480d0 | ||
|
08537b5a5a | ||
|
4627be2e50 | ||
|
7f20ca0a6d | ||
|
310df0046c | ||
|
3c5ce69846 | ||
|
b653117360 | ||
|
a2f8428352 | ||
|
e6b3e50fd2 | ||
|
504684c609 | ||
|
fc64424377 | ||
|
89e392e91f | ||
|
23279d2f46 | ||
|
d7863b25c6 | ||
|
6ded8f079b | ||
|
d524bf2057 | ||
|
6df8b94637 | ||
|
19d8a1da0f | ||
|
2ea5ef220b | ||
|
9ea7ade57f | ||
|
c9c9febe41 | ||
|
4519e512c6 | ||
|
2248b42a06 | ||
|
7af58538b6 | ||
|
9f61152d37 | ||
|
52d59b8609 | ||
|
6b30f17361 | ||
|
2f280ec06a | ||
|
3c7fd19f59 | ||
|
e38e2e773f | ||
|
f841eecab9 | ||
|
b2a1dc3569 | ||
|
9c64424cec | ||
|
a3692309c0 | ||
|
83b36c6aab | ||
|
c62a25f40a | ||
|
86ac92e63e | ||
|
aa65bd5b39 | ||
|
4203e72e12 | ||
|
73f345792d | ||
|
5eeae7c231 | ||
|
67dec1dd83 | ||
|
4e3545cf0e | ||
|
3f7e1193fa | ||
|
c2652d3ee5 | ||
|
51b540cf72 | ||
|
70d090101a | ||
|
d3584f6af2 | ||
|
c5efd73f6b | ||
|
4510f40729 | ||
|
56bd20d59b | ||
|
a4269dcd78 | ||
|
9f661aee30 | ||
|
35088962fe | ||
|
930e4d7e50 | ||
|
f4e2d10055 | ||
|
68126592ad | ||
|
5ea872fe30 | ||
|
7dec953ade | ||
|
1462890a77 | ||
|
d696dd66a0 | ||
|
107d1ee6c8 | ||
|
4a8adc4a42 | ||
|
a9385cb91c | ||
|
ec0ffa005a | ||
|
405073d198 | ||
|
88c5554970 | ||
|
c4e57a1696 | ||
|
99011d8bbc | ||
|
d86dbbade9 | ||
|
87a3d9dea7 | ||
|
c0b8620baa | ||
|
4b714dfaa5 | ||
|
ec4d14be3f | ||
|
1f0a8e3690 | ||
|
5ba42f1866 | ||
|
3c3e5cf3df | ||
|
943a1fb56c | ||
|
460ebfbeb2 | ||
|
a91fa3b760 | ||
|
d0cae88ba8 | ||
|
30a0198862 | ||
|
7b7f9e2c06 | ||
|
a12d664055 | ||
|
5cc7b3ac33 | ||
|
4465e1e8b8 | ||
|
4da9a34c87 | ||
|
7bc6210b64 | ||
|
f8a991e4a3 | ||
|
6dcc342c10 | ||
|
7c7a7d7c1e | ||
|
0a94970a70 | ||
|
875f16f12a | ||
|
c4733a3645 | ||
|
585841e787 | ||
|
bba9d0b421 | ||
|
600e338bab | ||
|
f03499a9a3 | ||
|
73533231a5 | ||
|
d52179dbe2 | ||
|
a7c67a8540 | ||
|
cb4651af0b | ||
|
ba6a3cc665 | ||
|
9f95769608 | ||
|
ca76d5fbae | ||
|
d7547e2d25 | ||
|
d53aa60112 | ||
|
8284388862 | ||
|
d69ca4d1f6 | ||
|
43077fc549 | ||
|
1ca63912b6 | ||
|
86f4a5bc69 | ||
|
b96b4b60b4 | ||
|
3da2074d9d | ||
|
ae5dc866c7 | ||
|
bf837e0e02 | ||
|
b6816fe886 | ||
|
f09a1259e4 | ||
|
5bffac3eaa | ||
|
197ac366e2 | ||
|
14063a80e9 | ||
|
8ed7972dce | ||
|
2abe88368b | ||
|
06678a5978 | ||
|
29bac274d6 | ||
|
eceedd5db8 | ||
|
98481a96e9 | ||
|
28faddea1d | ||
|
a9f25b3642 | ||
|
1235f71388 | ||
|
e277e4fc1f | ||
|
fcc1bca5a0 | ||
|
b8fc311997 | ||
|
9161fc1c05 | ||
|
fd168e881a | ||
|
df6cefbd69 | ||
|
23a8fdeb86 | ||
|
feabcef336 | ||
|
b122d40bce | ||
|
8346cc4988 | ||
|
067324edd9 | ||
|
c72a72b3f8 | ||
|
763438c7e5 | ||
|
00df25ff63 | ||
|
8f030d9ea5 | ||
|
bd8853f2e9 | ||
|
8c7e650f8f | ||
|
e6e6084e1c | ||
|
dc330b7d5b | ||
|
1ecaa22721 | ||
|
d516e9529d | ||
|
9afab2af89 | ||
|
4f36b21d2e | ||
|
e8041308b1 | ||
|
b04d7eb10a | ||
|
441c47c35f | ||
|
9bd001c9ed | ||
|
4ba1340e8e | ||
|
1094874321 | ||
|
84251abda7 | ||
|
fa4f9c2d82 | ||
|
7f275f2a3e | ||
|
ff56523865 | ||
|
1653698f99 | ||
|
a9dbfea8d1 | ||
|
7a9b5ee068 | ||
|
8e81d3825a | ||
|
bd67d553ea | ||
|
03f4dfe2e1 | ||
|
28d0b73bc5 | ||
|
0bfef9de14 | ||
|
622958bdb5 | ||
|
5c41fe8342 | ||
|
32a9144f55 | ||
|
e707d75624 | ||
|
868bfea65e | ||
|
9d3fe6e86e | ||
|
d9f36dc508 | ||
|
e35133b741 | ||
|
3df03768d2 | ||
|
4d6d97538c | ||
|
ede06e2ca8 | ||
|
f124186366 | ||
|
618e234d6c | ||
|
7bab142af1 | ||
|
11614b417b | ||
|
729d663832 | ||
|
e5fa27ba96 | ||
|
4b37779e9e | ||
|
46e8688de2 | ||
|
fceee07486 | ||
|
a108d0b986 | ||
|
362e23bea0 | ||
|
5ac77fca98 | ||
|
ab13f94cf0 | ||
|
764bce52fe | ||
|
b37c7f6cb9 | ||
|
35aa393f11 | ||
|
ed89eea72c | ||
|
f6f2d9bee7 | ||
|
66247ec6fd | ||
|
dbbf1918ab | ||
|
77895090dc | ||
|
2538662c9b | ||
|
89134729cc | ||
|
2132ac8ed2 | ||
|
7ed543ec35 | ||
|
907fe25d3c | ||
|
427d17351d | ||
|
b6146caf36 | ||
|
de37c031b5 | ||
|
ac49a480f4 | ||
|
31cbe96b4c | ||
|
5b9e61d839 | ||
|
e3af72febb | ||
|
aaf9f53571 | ||
|
9171ae9cd7 | ||
|
0b84a572d6 | ||
|
ec2f62fa5c | ||
|
a47c0913b5 | ||
|
ed410d039a | ||
|
6c617be7db | ||
|
afffee4755 | ||
|
98aa40424d | ||
|
5d1478d047 | ||
|
240c3d502e | ||
|
4ac29d2052 | ||
|
acb278bbff | ||
|
4a9b1c3bbe | ||
|
141d0c1e6f | ||
|
f169cb5159 | ||
|
4dcf050534 | ||
|
91be77909d | ||
|
558730eb74 | ||
|
1654642fdb | ||
|
c4003533f4 | ||
|
7e9a3b5d58 | ||
|
944803a276 | ||
|
4455ac0c55 | ||
|
e3ec8759ed | ||
|
d5dc848830 | ||
|
41f2b0457a | ||
|
a04f84fcc3 | ||
|
5ac2081195 | ||
|
3df1ce20ae | ||
|
78d0160514 | ||
|
f24600b909 | ||
|
5362c34698 | ||
|
64461171ac | ||
|
bb5c7447db | ||
|
3dc0ac7f91 | ||
|
b83d514c3b | ||
|
b0a476735d | ||
|
ffdcf89f7c | ||
|
56c162fd7d | ||
|
70cf86d68a | ||
|
9372efe6d2 | ||
|
7ed73e6272 | ||
|
256b01dda4 | ||
|
96422ff19f | ||
|
04524505dd | ||
|
6e01114ba8 | ||
|
227eb55365 | ||
|
c270873a7c | ||
|
8f2ac70621 | ||
|
93a35ff1ab | ||
|
22a8f160f0 | ||
|
9d1160e7cd | ||
|
851a811f0f | ||
|
1a55e32865 | ||
|
5a38bdf0b5 | ||
|
48a69892ef | ||
|
3a6baf0d1d | ||
|
420e8147fa | ||
|
29bf92135d | ||
|
3743e7d831 | ||
|
83f27ac2e2 | ||
|
5ff0b74b43 | ||
|
8bf1a2f803 | ||
|
7d1beb9eff | ||
|
24d80f8ab0 | ||
|
f522d88fc5 | ||
|
c03f8dcbac | ||
|
41608cf804 | ||
|
d6773eafb3 | ||
|
626a939d3c | ||
|
1df07b21ae | ||
|
64e13f92e6 | ||
|
d2e89b7337 | ||
|
37e06de0ed | ||
|
60e1d1cd9e | ||
|
5103b27091 | ||
|
202fc96de6 | ||
|
f694ba04b8 | ||
|
027d6af6bb | ||
|
5d0fa7fa67 | ||
|
704eb403d1 | ||
|
b85419c56a | ||
|
585d806ef8 | ||
|
1b37a4f504 | ||
|
7b4e751ba1 | ||
|
aca4a53513 | ||
|
75d40c8b68 | ||
|
d553834adf | ||
|
2b26f15463 | ||
|
2219fcd809 | ||
|
290023183c | ||
|
beaf2932ba | ||
|
f6b3b22e4f | ||
|
d2066495a9 | ||
|
9fa1974ba3 | ||
|
6b2573d955 | ||
|
72683aea57 | ||
|
66ac6174b7 | ||
|
aec3c5ca47 | ||
|
0cc853f177 | ||
|
96478f1021 | ||
|
3253e0088c | ||
|
11f91b577b | ||
|
eaa5445702 | ||
|
ef0255f2bb | ||
|
12f4d0a0fd | ||
|
e48dc22793 | ||
|
ad3e7dfe19 | ||
|
28cfad98ff | ||
|
7319e4cb88 | ||
|
62f05b3706 | ||
|
130d40c218 | ||
|
fe08cd4a78 | ||
|
34917a0b21 | ||
|
de756413e8 | ||
|
d6159067a8 | ||
|
fcd43df711 | ||
|
ff7c06311b | ||
|
5888645957 | ||
|
2fddaff6d2 | ||
|
8941835466 | ||
|
4ddb6dc9ff | ||
|
e52f1c0cea | ||
|
cd38f356d0 | ||
|
71fe079ee3 | ||
|
4cf2c0b7c7 | ||
|
b9e3b10a6b | ||
|
913d5bf7b0 | ||
|
350117b9a9 | ||
|
575fa755f8 | ||
|
bc06095a56 | ||
|
7cb15bbd95 | ||
|
6662357bcf | ||
|
3c2192603b | ||
|
86f27fc4d6 | ||
|
8a267240df | ||
|
59f97f3912 | ||
|
d3cbfe0e3c | ||
|
8c08f40b54 | ||
|
a239fe47e9 | ||
|
dac4bc08df | ||
|
0bd4bbe0d4 | ||
|
cc8c6d8004 | ||
|
42fa9f5eb2 | ||
|
8842b56080 | ||
|
49dc91cb6b | ||
|
e81c9cc5b0 | ||
|
71a5d7a1b4 | ||
|
808fe2c075 | ||
|
3bdfeb54ff | ||
|
b975658758 | ||
|
994898d9fc | ||
|
78b73ae529 | ||
|
a5b5500441 | ||
|
4100e33031 | ||
|
4b38488b51 | ||
|
4ee2eb532a | ||
|
0a9a2ba136 | ||
|
3799746ac0 | ||
|
189d5a6a01 | ||
|
28262ca5fb | ||
|
568b2446f1 | ||
|
02babd5ff8 | ||
|
c0aa1b0358 | ||
|
e46f7f09b8 | ||
|
f6d97efe55 | ||
|
0fd169c008 | ||
|
c32116a330 | ||
|
40f7ecdaa0 | ||
|
37a36532d0 | ||
|
da7b3fbd41 | ||
|
3f800dd0a9 | ||
|
6d3516482e | ||
|
5d68bf73b3 | ||
|
7f1cb0e203 | ||
|
be080f432c | ||
|
3a4981046c | ||
|
0b62856e70 | ||
|
e340517d1c | ||
|
e939c8c246 | ||
|
585077eaef | ||
|
3c337d6cf5 | ||
|
c411e8fbf5 | ||
|
4ad190c401 | ||
|
5891dfa5da | ||
|
ec4030052a | ||
|
51870a2ae1 | ||
|
c99f2e1914 | ||
|
fb08489f5a | ||
|
531e96de00 | ||
|
7f960824f5 | ||
|
80b2370bc3 | ||
|
a379692252 | ||
|
7db7159349 | ||
|
7923cd811b | ||
|
a33f53c79b | ||
|
50c4feb6bb | ||
|
a4f08dc210 | ||
|
8dd46a08ea | ||
|
07e179c196 | ||
|
44fb308c4a | ||
|
ed3a57c92c | ||
|
043d9da47e | ||
|
ffef9ab48f | ||
|
8b10dd05ff | ||
|
7be39b1b55 | ||
|
a229c583ee | ||
|
fadffc1afc | ||
|
5a423e93ba | ||
|
02a73de41b | ||
|
74cc488383 | ||
|
dc626ea9bb | ||
|
bc34a759c7 | ||
|
8d9dc3b5ed | ||
|
b2303b028c | ||
|
d0391e3516 | ||
|
8ce840dd17 | ||
|
5b05b13c5d | ||
|
4241f01376 | ||
|
e56908b0c6 | ||
|
04ee258010 | ||
|
15fec2c28d | ||
|
a768e91855 | ||
|
1df378d3a8 | ||
|
b909f5ebba | ||
|
cc0e0c0f28 | ||
|
91862a582e | ||
|
c06e740ffc | ||
|
0398414e2c | ||
|
fe552abb20 | ||
|
bb834caebc | ||
|
b4b0cedd17 | ||
|
7c9c6ea440 | ||
|
b9079e005b | ||
|
97193ef34d | ||
|
e22688e462 | ||
|
fd1d411bf0 | ||
|
2baea0364b | ||
|
b4e2943298 |
212
.appveyor.yml
@ -20,118 +20,118 @@ environment:
|
||||
# -DBUILD_SERVER=OFF \
|
||||
# -DCMAKE_PREFIX_PATH=C:\\Qt\\5.15.2\\msvc2019_64;C:\\Libraries\\boost_1_73_0"
|
||||
# CMAKE_GENERATOR: Ninja
|
||||
- TARGET: ubuntu2204prod
|
||||
APPVEYOR_BUILD_WORKER_CLOUD: nasrock Docker
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Linux
|
||||
CC: "gcc-11"
|
||||
CXX: "g++-11"
|
||||
CMAKE_CUSTOM_OPTIONS: "-DCMAKE_BUILD_TYPE=Release \
|
||||
-DARCH_OPT=nehalem \
|
||||
-DDEBUG_OUTPUT=ON \
|
||||
-DENABLE_EXTERNAL_LIBRARIES=AUTO \
|
||||
-DBUILD_SERVER=OFF"
|
||||
# - TARGET: ubuntu2204prod
|
||||
# APPVEYOR_BUILD_WORKER_CLOUD: nasrock Docker
|
||||
# APPVEYOR_BUILD_WORKER_IMAGE: Linux
|
||||
# CC: "gcc-11"
|
||||
# CXX: "g++-11"
|
||||
# CMAKE_CUSTOM_OPTIONS: "-DCMAKE_BUILD_TYPE=Release \
|
||||
# -DARCH_OPT=nehalem \
|
||||
# -DDEBUG_OUTPUT=ON \
|
||||
# -DENABLE_EXTERNAL_LIBRARIES=AUTO \
|
||||
# -DBUILD_SERVER=OFF"
|
||||
- TARGET: ubuntu2204docker
|
||||
APPVEYOR_BUILD_WORKER_CLOUD: nasrock
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Linux
|
||||
APPVEYOR_CONSOLE_DISABLE_PTY: true
|
||||
|
||||
for:
|
||||
# - matrix:
|
||||
# only:
|
||||
# - TARGET: 'vs2019gui'
|
||||
# cache:
|
||||
# - C:\ProgramData\chocolatey\bin
|
||||
# - C:\ProgramData\chocolatey\lib
|
||||
# build_script:
|
||||
# - call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
|
||||
# # Install GNU patch as applying patches with git fails in BladeRF tree
|
||||
# - choco install patch
|
||||
# - git submodule update --init --recursive
|
||||
# - mkdir build && cd build
|
||||
# - cmake .. -G "%CMAKE_GENERATOR%" %CMAKE_CUSTOM_OPTIONS%
|
||||
# - cmake --build . --config Release --target package
|
||||
# artifacts: # push installer executable
|
||||
# path: build\*.exe
|
||||
# name: installer
|
||||
# deploy:
|
||||
# release: sdrangel-v$(appveyor_build_version)
|
||||
# description: 'SDRangel Windows'
|
||||
# provider: GitHub
|
||||
# auth_token:
|
||||
# secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
|
||||
# artifact: installer, portable
|
||||
# draft: false
|
||||
# prerelease: false
|
||||
# tag: $(APPVEYOR_REPO_TAG_NAME) # will not work until tag is pushed
|
||||
# on:
|
||||
# APPVEYOR_REPO_TAG: true # deploy on tag push only
|
||||
# branch: master # release from master branch only
|
||||
- matrix:
|
||||
only:
|
||||
- TARGET: ubuntu2204prod
|
||||
clone_folder: /home/appveyor/projects
|
||||
cache:
|
||||
- $HOME/external/
|
||||
install:
|
||||
- sh: sudo apt-get update
|
||||
- sh: echo 'debconf debconf/frontend select Noninteractive' | sudo debconf-set-selections
|
||||
# not sdrplay with soapysdr; libairspyhf-dev is too old (no lna)
|
||||
- sh: |
|
||||
sudo apt-get -y install build-essential cmake git xxd \
|
||||
devscripts fakeroot debhelper libfftw3-dev qtbase5-dev libopengl-dev libqt5opengl5-dev \
|
||||
qttools5-dev qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins libqt5websockets5-dev \
|
||||
libqt5quick5 qtwebengine5-dev qtbase5-private-dev \
|
||||
qml-module-qtlocation qml-module-qtpositioning qml-module-qtquick-window2 qml-module-qtquick-dialogs \
|
||||
qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtgraphicaleffects \
|
||||
libqt5serialport5-dev qtdeclarative5-dev qtpositioning5-dev qtlocation5-dev \
|
||||
libqt5charts5-dev libqt5texttospeech5-dev libqt5gamepad5-dev libqt5svg5-dev libfaad-dev zlib1g-dev \
|
||||
libusb-1.0-0-dev libhidapi-dev libboost-all-dev libasound2-dev libopencv-dev libopencv-imgcodecs-dev \
|
||||
libxml2-dev bison flex ffmpeg libpostproc-dev libavcodec-dev libavformat-dev \
|
||||
libopus-dev libcodec2-dev libairspy-dev libhackrf-dev \
|
||||
libbladerf-dev libsoapysdr-dev libiio-dev libuhd-dev libhamlib-dev \
|
||||
python3-mako python3-cheetah python3-numpy \
|
||||
autoconf automake libtool ninja-build libclang1-11
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_cm256cc.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_mbelib.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_serialdv.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_dsdcc.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_perseus-sdr.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_xtrx-sdr.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_airspyhf.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_rtlsdr.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_limesuite.sh; fi
|
||||
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_ggmorse.sh; fi
|
||||
- sh: bash cmake/ci/build_sdrplay.sh
|
||||
before_build:
|
||||
- sh: bash -c export
|
||||
- sh: bash -c pwd
|
||||
build_script:
|
||||
- sh: ./cmake/ci/build_sdrangel.sh
|
||||
test_script:
|
||||
# debian build path
|
||||
- sh: ./obj-x86_64-linux-gnu/sdrangelbench
|
||||
after_build:
|
||||
- sh: mkdir sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
- sh: cp ../*.deb ../*.build ../*.buildinfo ../*.changes sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
- sh: tar -czf sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
artifacts:
|
||||
- path: sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz
|
||||
name: package2204
|
||||
# deploy:
|
||||
# release: sdrangel-v$(appveyor_build_version)
|
||||
# description: 'SDRangel Ubuntu 22.04'
|
||||
# provider: GitHub
|
||||
# auth_token:
|
||||
# secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
|
||||
# artifact: archive
|
||||
# draft: false
|
||||
# prerelease: false
|
||||
# on:
|
||||
# APPVEYOR_REPO_TAG: true # deploy on tag push only
|
||||
# branch: master # release from master branch only
|
||||
deploy:
|
||||
provider: Environment
|
||||
name: f4exb
|
||||
# # - matrix:
|
||||
# # only:
|
||||
# # - TARGET: 'vs2019gui'
|
||||
# # cache:
|
||||
# # - C:\ProgramData\chocolatey\bin
|
||||
# # - C:\ProgramData\chocolatey\lib
|
||||
# # build_script:
|
||||
# # - call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
|
||||
# # # Install GNU patch as applying patches with git fails in BladeRF tree
|
||||
# # - choco install patch
|
||||
# # - git submodule update --init --recursive
|
||||
# # - mkdir build && cd build
|
||||
# # - cmake .. -G "%CMAKE_GENERATOR%" %CMAKE_CUSTOM_OPTIONS%
|
||||
# # - cmake --build . --config Release --target package
|
||||
# # artifacts: # push installer executable
|
||||
# # path: build\*.exe
|
||||
# # name: installer
|
||||
# # deploy:
|
||||
# # release: sdrangel-v$(appveyor_build_version)
|
||||
# # description: 'SDRangel Windows'
|
||||
# # provider: GitHub
|
||||
# # auth_token:
|
||||
# # secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
|
||||
# # artifact: installer, portable
|
||||
# # draft: false
|
||||
# # prerelease: false
|
||||
# # tag: $(APPVEYOR_REPO_TAG_NAME) # will not work until tag is pushed
|
||||
# # on:
|
||||
# # APPVEYOR_REPO_TAG: true # deploy on tag push only
|
||||
# # branch: master # release from master branch only
|
||||
# - matrix:
|
||||
# only:
|
||||
# - TARGET: ubuntu2204prod
|
||||
# clone_folder: /home/appveyor/projects
|
||||
# cache:
|
||||
# - $HOME/external/
|
||||
# install:
|
||||
# - sh: sudo apt-get update
|
||||
# - sh: echo 'debconf debconf/frontend select Noninteractive' | sudo debconf-set-selections
|
||||
# # not sdrplay with soapysdr; libairspyhf-dev is too old (no lna)
|
||||
# - sh: |
|
||||
# sudo apt-get -y install build-essential cmake git xxd \
|
||||
# devscripts fakeroot debhelper libfftw3-dev qtbase5-dev libopengl-dev libqt5opengl5-dev \
|
||||
# qttools5-dev qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins libqt5websockets5-dev \
|
||||
# libqt5quick5 qtwebengine5-dev qtbase5-private-dev \
|
||||
# qml-module-qtlocation qml-module-qtpositioning qml-module-qtquick-window2 qml-module-qtquick-dialogs \
|
||||
# qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtgraphicaleffects \
|
||||
# libqt5serialport5-dev qtdeclarative5-dev qtpositioning5-dev qtlocation5-dev \
|
||||
# libqt5charts5-dev libqt5texttospeech5-dev libqt5gamepad5-dev libqt5svg5-dev libfaad-dev libflac-dev zlib1g-dev \
|
||||
# libusb-1.0-0-dev libhidapi-dev libboost-all-dev libasound2-dev libopencv-dev libopencv-imgcodecs-dev \
|
||||
# libxml2-dev bison flex ffmpeg libpostproc-dev libavcodec-dev libavformat-dev \
|
||||
# libopus-dev libcodec2-dev libairspy-dev libhackrf-dev \
|
||||
# libbladerf-dev libsoapysdr-dev libiio-dev libuhd-dev libhamlib-dev \
|
||||
# python3-mako python3-cheetah python3-numpy \
|
||||
# autoconf automake libtool ninja-build libclang1-11
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_cm256cc.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_mbelib.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_serialdv.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_dsdcc.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_perseus-sdr.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_xtrx-sdr.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_airspyhf.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_rtlsdr.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_limesuite.sh; fi
|
||||
# - sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES" ]]; then bash cmake/ci/build_ggmorse.sh; fi
|
||||
# - sh: bash cmake/ci/build_sdrplay.sh
|
||||
# before_build:
|
||||
# - sh: bash -c export
|
||||
# - sh: bash -c pwd
|
||||
# build_script:
|
||||
# - sh: ./cmake/ci/build_sdrangel.sh
|
||||
# test_script:
|
||||
# # debian build path
|
||||
# - sh: ./obj-x86_64-linux-gnu/sdrangelbench
|
||||
# after_build:
|
||||
# - sh: mkdir sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
# - sh: cp ../*.deb ../*.build ../*.buildinfo ../*.changes sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
# - sh: tar -czf sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz sdrangel-${APPVEYOR_BUILD_VERSION}
|
||||
# artifacts:
|
||||
# - path: sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz
|
||||
# name: package2204
|
||||
# # deploy:
|
||||
# # release: sdrangel-v$(appveyor_build_version)
|
||||
# # description: 'SDRangel Ubuntu 22.04'
|
||||
# # provider: GitHub
|
||||
# # auth_token:
|
||||
# # secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
|
||||
# # artifact: archive
|
||||
# # draft: false
|
||||
# # prerelease: false
|
||||
# # on:
|
||||
# # APPVEYOR_REPO_TAG: true # deploy on tag push only
|
||||
# # branch: master # release from master branch only
|
||||
# deploy:
|
||||
# provider: Environment
|
||||
# name: f4exb
|
||||
- matrix:
|
||||
only:
|
||||
- TARGET: ubuntu2204docker
|
||||
|
62
.github/workflows/linux.yml
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
name: SDRangel Linux release build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- linux_github_release
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
build_deb:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-22.04, ubuntu-24.04]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
fetch-depth: 0
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get -y install build-essential cmake git xxd \
|
||||
devscripts fakeroot debhelper libfftw3-dev qtbase5-dev libopengl-dev libqt5opengl5-dev \
|
||||
qttools5-dev qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins libqt5websockets5-dev \
|
||||
libqt5quick5 qtwebengine5-dev qtbase5-private-dev \
|
||||
qml-module-qtlocation qml-module-qtpositioning qml-module-qtquick-window2 qml-module-qtquick-dialogs \
|
||||
qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtgraphicaleffects \
|
||||
libqt5serialport5-dev qtdeclarative5-dev qtpositioning5-dev qtlocation5-dev \
|
||||
libqt5charts5-dev libqt5texttospeech5-dev libqt5gamepad5-dev libqt5svg5-dev libfaad-dev libflac-dev zlib1g-dev \
|
||||
libusb-1.0-0-dev libhidapi-dev libboost-all-dev libasound2-dev libopencv-dev libopencv-imgcodecs-dev \
|
||||
libxml2-dev bison flex ffmpeg libpostproc-dev libavcodec-dev libavformat-dev \
|
||||
libopus-dev libcodec2-dev libairspy-dev libhackrf-dev \
|
||||
libbladerf-dev libsoapysdr-dev libiio-dev libuhd-dev libhamlib-dev \
|
||||
python3-mako python3-cheetah python3-numpy \
|
||||
autoconf automake libtool ninja-build
|
||||
bash cmake/ci/build_sdrplay.sh
|
||||
- name: Build SDRangel
|
||||
run: |
|
||||
debuild -i -us -uc -b
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: |
|
||||
if [[ "${{github.ref_name}}" == "linux_github_release" ]]; then
|
||||
echo "version=$(echo ${{github.sha}} | cut -c1-7)" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "version=$(echo ${{github.ref_name}} | cut -c2-)" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Rename
|
||||
run: mv ../sdrangel_*_amd64.deb sdrangel_${{ steps.get_version.outputs.version }}_${{ matrix.os }}_amd64.deb
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel_${{ steps.get_version.outputs.version }}_${{ matrix.os }}_amd64.deb
|
||||
path: sdrangel_${{ steps.get_version.outputs.version }}_${{ matrix.os }}_amd64.deb
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: sdrangel_${{ steps.get_version.outputs.version }}_${{ matrix.os }}_amd64.deb
|
161
.github/workflows/mac.yml
vendored
Normal file
@ -0,0 +1,161 @@
|
||||
name: SDRangel Mac release build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- mac_ci
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
build_mac_x64:
|
||||
runs-on: macos-13
|
||||
env:
|
||||
MACOSX_DEPLOYMENT_TARGET: 12.0
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
fetch-depth: 0
|
||||
- name: Update brew
|
||||
run: brew update
|
||||
- name: Install brew packages
|
||||
run: brew install nasm subversion
|
||||
- name: Install SDRplay API
|
||||
run: |
|
||||
wget https://www.sdrplay.com/software/SDRplayAPI-macos-installer-universal-3.15.0.pkg
|
||||
sudo installer -pkg SDRplayAPI-macos-installer-universal-3.15.0.pkg -target /
|
||||
- name: Install python
|
||||
run: |
|
||||
wget https://www.python.org/ftp/python/3.12.7/python-3.12.7-macos11.pkg
|
||||
sudo installer -pkg python-3.12.7-macos11.pkg -target /
|
||||
- name: Install python packages for UHD
|
||||
run: |
|
||||
/usr/local/bin/python3.12 -m pip install numpy mako requests Cheetah3 setuptools
|
||||
- name: Install Qt
|
||||
uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: '6.9.1'
|
||||
host: 'mac'
|
||||
arch: 'clang_64'
|
||||
modules: 'qtcharts qtscxml qt5compat qtlocation qtmultimedia qtpositioning qtserialport qtspeech qtwebsockets qtwebengine qtshadertools qtwebchannel'
|
||||
- name: Configure SDRangel
|
||||
run: |
|
||||
mkdir build && cd build
|
||||
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_QT6=ON -DCMAKE_BUILD_TYPE=Release -DARCH_OPT=nehalem -DDEBUG_OUTPUT=ON -DENABLE_USRP=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DENABLE_EXTERNAL_LIBRARIES=ON -DBUNDLE=ON -DPKG_CONFIG_USE_CMAKE_PREFIX_PATH=TRUE -DPYTHON_EXECUTABLE=/usr/local/bin/python3.12
|
||||
- name: Build SDRangel on Mac
|
||||
run: |
|
||||
cd build
|
||||
make -j4
|
||||
- name: Create dmg
|
||||
run: |
|
||||
cd build
|
||||
RETRIES=5
|
||||
COUNT=1
|
||||
set +e
|
||||
while [ $COUNT -lt $RETRIES ]; do
|
||||
make package
|
||||
if [ $? -eq 0 ]; then
|
||||
RETRIES=0
|
||||
break
|
||||
fi
|
||||
let COUNT=$COUNT+1
|
||||
done
|
||||
shell: bash
|
||||
continue-on-error: true
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: |
|
||||
if [[ "${{github.ref_name}}" == "mac_ci" ]]; then
|
||||
echo "version=$(echo ${{github.sha}} | cut -c1-7)" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "version=$(echo ${{github.ref_name}} | cut -c2-)" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Get filename
|
||||
id: get_filename
|
||||
run: echo "filename=$(grep CPACK_PACKAGE_FILE_NAME build/CMakeCache.txt | cut -d "=" -f2)" >> $GITHUB_OUTPUT
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-macx64.dmg
|
||||
path: ${{ github.workspace }}/build/${{ steps.get_filename.outputs.filename }}.dmg
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: ${{ github.workspace }}/build/${{ steps.get_filename.outputs.filename }}.dmg
|
||||
|
||||
build_mac_arm64:
|
||||
runs-on: macos-14
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
fetch-depth: 0
|
||||
- name: Update brew
|
||||
run: brew update
|
||||
- name: Install brew packages
|
||||
run: brew install nasm subversion
|
||||
- name: Install SDRplay API
|
||||
run: |
|
||||
wget https://www.sdrplay.com/software/SDRplayAPI-macos-installer-universal-3.15.0.pkg
|
||||
sudo installer -pkg SDRplayAPI-macos-installer-universal-3.15.0.pkg -target /
|
||||
- name: Install python
|
||||
run: |
|
||||
wget https://www.python.org/ftp/python/3.12.7/python-3.12.7-macos11.pkg
|
||||
sudo installer -pkg python-3.12.7-macos11.pkg -target /
|
||||
- name: Install python packages for UHD
|
||||
run: |
|
||||
/usr/local/bin/python3.12 -m pip install numpy mako requests Cheetah3 setuptools
|
||||
- name: Install Qt
|
||||
uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: '6.9.1'
|
||||
host: 'mac'
|
||||
arch: 'clang_64'
|
||||
modules: 'qtcharts qtscxml qt5compat qtlocation qtmultimedia qtpositioning qtserialport qtspeech qtwebsockets qtwebengine qtshadertools qtwebchannel'
|
||||
- name: Configure SDRangel
|
||||
run: |
|
||||
mkdir build && cd build
|
||||
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_QT6=ON -DCMAKE_BUILD_TYPE=Release -DDEBUG_OUTPUT=ON -DENABLE_USRP=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DENABLE_EXTERNAL_LIBRARIES=ON -DBUNDLE=ON -DPKG_CONFIG_USE_CMAKE_PREFIX_PATH=TRUE -DPYTHON_EXECUTABLE=/usr/local/bin/python3.12
|
||||
- name: Build SDRangel on Mac
|
||||
run: |
|
||||
cd build
|
||||
make -j3
|
||||
- name: Create dmg
|
||||
run: |
|
||||
cd build
|
||||
RETRIES=5
|
||||
COUNT=1
|
||||
set +e
|
||||
while [ $COUNT -lt $RETRIES ]; do
|
||||
make package
|
||||
if [ $? -eq 0 ]; then
|
||||
RETRIES=0
|
||||
break
|
||||
fi
|
||||
let COUNT=$COUNT+1
|
||||
done
|
||||
shell: bash
|
||||
continue-on-error: true
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: |
|
||||
if [[ "${{github.ref_name}}" == "mac_ci" ]]; then
|
||||
echo "version=$(echo ${{github.sha}} | cut -c1-7)" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "version=$(echo ${{github.ref_name}} | cut -c2-)" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Get filename
|
||||
id: get_filename
|
||||
run: echo "filename=$(grep CPACK_PACKAGE_FILE_NAME build/CMakeCache.txt | cut -d "=" -f2)" >> $GITHUB_OUTPUT
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-macarm64.dmg
|
||||
path: ${{ github.workspace }}/build/${{ steps.get_filename.outputs.filename }}.dmg
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: ${{ github.workspace }}/build/${{ steps.get_filename.outputs.filename }}.dmg
|
28
.github/workflows/sdrangel.yml
vendored
@ -24,7 +24,7 @@ jobs:
|
||||
WIN_ARCH: "x64",
|
||||
os: windows-latest,
|
||||
QT_INST_DIR: "C:/",
|
||||
QTDIR: "C:/Qt/5.15.2/msvc2019_64",
|
||||
QTDIR: "C:/Qt/6.7.3/msvc2019_64",
|
||||
QT_ARCH: win64_msvc2019_64,
|
||||
boost_dl: "${{ github.workspace }}\\downloads\\boost",
|
||||
lib_dir: "C:\\Libraries",
|
||||
@ -41,6 +41,9 @@ jobs:
|
||||
echo github.event_name: ${{ github.event_name }}
|
||||
echo github.ref: ${{ github.ref }}
|
||||
echo github.workspace: ${{ github.workspace }}
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.12'
|
||||
- name: Install basic dependencies on Windows
|
||||
if: startsWith(matrix.config.os, 'windows')
|
||||
run: |
|
||||
@ -69,19 +72,20 @@ jobs:
|
||||
rm -rf boost_*/* download.tar.bz2 download.tar
|
||||
shell: bash
|
||||
- name: Install Qt
|
||||
uses: jurplel/install-qt-action@v3
|
||||
uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: '6.7.3'
|
||||
dir: ${{matrix.config.QT_INST_DIR}}
|
||||
arch: ${{matrix.config.QT_ARCH}}
|
||||
setup-python: false
|
||||
modules: 'qtcharts qtwebengine'
|
||||
modules: 'qtcharts qtscxml qt5compat qtlocation qtmultimedia qtpositioning qtserialport qtspeech qtwebsockets qtwebengine qtshadertools qtwebchannel'
|
||||
- name: build sdrangel on Windows
|
||||
if: startsWith(matrix.config.os, 'windows')
|
||||
run: |
|
||||
cmd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
cmd "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
choco install patch
|
||||
mkdir build && cd build
|
||||
cmake .. -G "${{ matrix.config.generators }}" -DCMAKE_BUILD_TYPE=Release -DARCH_OPT=SSE4_2 -DDEBUG_OUTPUT=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DCMAKE_PREFIX_PATH="C:\Qt\5.15.2\msvc2019_64;C:\Libraries\boost_1_73_0"
|
||||
cmake .. -G "${{ matrix.config.generators }}" -DCMAKE_BUILD_TYPE=Release -DENABLE_QT6=ON -DARCH_OPT=SSE4_2 -DDEBUG_OUTPUT=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DCMAKE_PREFIX_PATH="C:\Qt\6.7.3\msvc2019_64;C:\Libraries\boost_1_73_0"
|
||||
cmake --build . --config Release --target package
|
||||
- name: Check disk space
|
||||
run: Get-PSDrive
|
||||
@ -89,18 +93,13 @@ jobs:
|
||||
id: get_version
|
||||
run: echo "version=$(grep sdrangel_VERSION build/CMakeCache.txt | cut -d "=" -f2)" >> $env:GITHUB_OUTPUT
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
path: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v0.1.13
|
||||
with:
|
||||
files: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
|
||||
build_mac:
|
||||
runs-on: macos-13
|
||||
runs-on: macos-14
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
@ -125,10 +124,7 @@ jobs:
|
||||
- name: Configure SDRangel
|
||||
run: |
|
||||
mkdir build && cd build
|
||||
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_QT6=ON -DCMAKE_BUILD_TYPE=Release -DARCH_OPT=nehalem -DDEBUG_OUTPUT=ON -DENABLE_CHANNELRX_DEMODDATV=OFF -DENABLE_CHANNELTX_MODDATV=OFF -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DENABLE_EXTERNAL_LIBRARIES=AUTO -DBUNDLE=ON -DPKG_CONFIG_USE_CMAKE_PREFIX_PATH=TRUE -DCMAKE_PREFIX_PATH="/usr/local/opt/ffmpeg@5/"
|
||||
- name: Get filename
|
||||
id: get_filename
|
||||
run: echo "filename=$(grep CPACK_PACKAGE_FILE_NAME build/CMakeCache.txt | cut -d "=" -f2)" >> $GITHUB_OUTPUT
|
||||
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_QT6=ON -DCMAKE_BUILD_TYPE=Release -DDEBUG_OUTPUT=ON -DENABLE_CHANNELRX_DEMODDATV=OFF -DENABLE_CHANNELTX_MODDATV=OFF -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DENABLE_EXTERNAL_LIBRARIES=AUTO -DBUNDLE=ON -DPKG_CONFIG_USE_CMAKE_PREFIX_PATH=TRUE -DCMAKE_PREFIX_PATH="/usr/local/opt/ffmpeg@5/"
|
||||
- name: Build SDRangel on Mac
|
||||
run: |
|
||||
cd build
|
||||
|
44
.github/workflows/snap.yml
vendored
Normal file
@ -0,0 +1,44 @@
|
||||
# See: https://github.com/snapcore/action-build
|
||||
name: SDRangel snap release build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- snap
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
build_snap:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
fetch-depth: 0
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: |
|
||||
if [[ "${{github.ref_name}}" == "snap" ]]; then
|
||||
echo "version=${{github.sha}}" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "version=$(echo ${{github.ref_name}} | cut -c2-)" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- uses: snapcore/action-build@v1
|
||||
id: build
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-amd64.snap
|
||||
path: ${{ steps.build.outputs.snap }}
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: ${{ steps.build.outputs.snap }}
|
||||
- uses: snapcore/action-publish@v1
|
||||
env:
|
||||
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_STORE_LOGIN }}
|
||||
with:
|
||||
snap: ${{ steps.build.outputs.snap }}
|
||||
release: stable
|
119
.github/workflows/windows.yml
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
name: SDRangel Windows release build and signing
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: ${{ matrix.config.name }}
|
||||
runs-on: ${{ matrix.config.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
config:
|
||||
- {
|
||||
name: "Windows-x64",
|
||||
WIN_ARCH: "x64",
|
||||
os: windows-latest,
|
||||
QT_INST_DIR: "C:/",
|
||||
QTDIR: "C:/Qt/6.7.3/msvc2019_64",
|
||||
QT_ARCH: win64_msvc2019_64,
|
||||
boost_dl: "${{ github.workspace }}\\downloads\\boost",
|
||||
lib_dir: "C:\\Libraries",
|
||||
generators: Ninja
|
||||
}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
fetch-depth: 0
|
||||
- name: Print env
|
||||
run: |
|
||||
echo github.event.action: ${{ github.event.action }}
|
||||
echo github.event_name: ${{ github.event_name }}
|
||||
echo github.ref: ${{ github.ref }}
|
||||
echo github.workspace: ${{ github.workspace }}
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.12'
|
||||
- name: Install basic dependencies on Windows
|
||||
if: startsWith(matrix.config.os, 'windows')
|
||||
run: |
|
||||
choco install ninja cmake
|
||||
ninja --version
|
||||
cmake --version
|
||||
- name: Install MSVC on Windows
|
||||
if: startsWith(matrix.config.os, 'windows')
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: x64
|
||||
- name: Install Boost
|
||||
env:
|
||||
BOOST_ROOT: ${{ matrix.config.boost_dl }}
|
||||
BOOST_DEST: ${{ matrix.config.lib_dir }}
|
||||
BOOST_URL: https://archives.boost.io/release/1.73.0/source/boost_1_73_0.tar.bz2
|
||||
run: |
|
||||
mkdir -p $BOOST_ROOT
|
||||
mkdir -p $BOOST_DEST
|
||||
curl --progress-bar --location --output $BOOST_ROOT/download.tar.bz2 $BOOST_URL
|
||||
7z -o$BOOST_ROOT x $BOOST_ROOT/download.tar.bz2 -y -bd
|
||||
7z -o$BOOST_ROOT x $BOOST_ROOT/download.tar -y -bd
|
||||
cd $BOOST_ROOT && cp -r boost_* $BOOST_DEST
|
||||
ls -l $BOOST_DEST
|
||||
ls -l "C:\\"
|
||||
rm -rf boost_*/* download.tar.bz2 download.tar
|
||||
shell: bash
|
||||
- name: Install Qt
|
||||
uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: '6.7.3'
|
||||
dir: ${{matrix.config.QT_INST_DIR}}
|
||||
arch: ${{matrix.config.QT_ARCH}}
|
||||
setup-python: 'false'
|
||||
modules: 'qtcharts qtscxml qt5compat qtlocation qtmultimedia qtpositioning qtserialport qtspeech qtwebsockets qtwebengine qtshadertools qtwebchannel'
|
||||
- name: build sdrangel on Windows
|
||||
if: startsWith(matrix.config.os, 'windows')
|
||||
run: |
|
||||
cmd "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
choco install patch
|
||||
mkdir build && cd build
|
||||
cmake .. -G "${{ matrix.config.generators }}" -DCMAKE_BUILD_TYPE=Release -DENABLE_QT6=ON -DARCH_OPT=SSE4_2 -DDEBUG_OUTPUT=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DCMAKE_PREFIX_PATH="C:\Qt\6.7.3\msvc2019_64;C:\Libraries\boost_1_73_0"
|
||||
cmake --build . --config Release --target package
|
||||
- name: Check disk space
|
||||
run: Get-PSDrive
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: echo "version=$(grep sdrangel_VERSION build/CMakeCache.txt | cut -d "=" -f2)" >> $env:GITHUB_OUTPUT
|
||||
- name: Upload unsigned artifact
|
||||
id: upload-unsigned-artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
path: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
- name: Sign Code
|
||||
id: sign_code
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
with:
|
||||
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
|
||||
organization-id: '553b8f53-adf0-4fe5-be3d-283504a21a51'
|
||||
project-slug: 'sdrangel'
|
||||
signing-policy-slug: 'release-signing'
|
||||
github-artifact-id: '${{ steps.upload-unsigned-artifact.outputs.artifact-id }}'
|
||||
wait-for-completion: true
|
||||
output-artifact-directory: 'build\signed'
|
||||
wait-for-completion-timeout-in-seconds: 3600
|
||||
- name: Upload signed artifact
|
||||
id: upload-signed-artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sdrangel-${{ steps.get_version.outputs.version }}-win64-signed.exe
|
||||
path: ${{ github.workspace }}/build/signed/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
||||
- name: Upload release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: ${{ github.workspace }}/build/signed/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe
|
3
.gitignore
vendored
@ -14,7 +14,9 @@ LOCAL/*
|
||||
.vscode/
|
||||
.settings/
|
||||
*.cs
|
||||
*.orig
|
||||
*.pro.user
|
||||
*.rej
|
||||
.idea/*
|
||||
rescuesdriq/rescuesdriq
|
||||
debian/sdrangel/*
|
||||
@ -26,6 +28,7 @@ obj-x86_64-linux-gnu/*
|
||||
**/venv*/
|
||||
*.pyc
|
||||
.DS_Store
|
||||
.sonarlint
|
||||
|
||||
### Go ###
|
||||
# Binaries for programs and plugins
|
||||
|
144
CHANGELOG
@ -1,3 +1,147 @@
|
||||
sdrangel (7.22.8-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Wed, 02 Jul 2025 17:00:39 +0200
|
||||
|
||||
sdrangel (7.22.7-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 04 May 2025 17:58:14 +0200
|
||||
|
||||
sdrangel (7.22.6-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 02 Feb 2025 18:08:11 +0100
|
||||
|
||||
sdrangel (7.22.5-1) unstable; urgency=medium
|
||||
|
||||
* Windows: upload signed releases rather than unsigned releases to Github releases page. PR #2347
|
||||
* Windows: fixed signed releases. PR #2344
|
||||
* FT8 Demod: limit upper bandwidth to 5.8 kHz. Fixes #2339
|
||||
* Stop device while changing channel set. Fixes #2332. PR #2342
|
||||
* ADSB: Update URL of OpenSkyNetwork Aircraft database. PR #2341
|
||||
* Don't stop source if being deleted. For #2315. PR #2340
|
||||
* Send DSPSignalNotification in audio mods for #2336. PR #2340
|
||||
* Radiosonde: limit precision of floating point numbers sent to SondeHub. PR #2338
|
||||
* Windows signed releases: use relative path. Increase timeout to 30 minutes. PR #2335
|
||||
* ADSB: Include adsbdemodsettings.h PR #2334
|
||||
* Use release signing certificate for Windows installer. PR #2331
|
||||
* Fix memory leak and race condition relating to DSP*Engines. Part of #2159 PR #2330
|
||||
* FreeDV: Fix memory allocation/free issues. Part of #2315. PR #2330
|
||||
* Wav Files: Add support for meta-data. PR #2328
|
||||
* DemodAnalyzer: Ensure sample rate is set in worker. Fixes #2309. PR #2328
|
||||
^ SDRplayv3: Mac: link with libsdrplay_api.so.3 rather than libsdrplay_api.so.3.15. PR #2327
|
||||
* ADS-B: Fix memory use after delete. For #1734 and part of #2315 PR #2326
|
||||
* Fixed Appveyor Docker image build
|
||||
* Fix output-artifact-directory and unzip file. PR #2323
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Thu, 05 Dec 2024 01:07:27 +0100
|
||||
|
||||
sdrangel (7.22.4-1) unstable; urgency=medium
|
||||
|
||||
* Use macos-12 for Mac x86 build. PR #2321
|
||||
* Workaround for "hdiutil: create failed - Resource busy"
|
||||
* Pager: Add alpha and numeric columns. Implements #2319. PR #2320
|
||||
* Added qtwebchannel dependecy to fix missing 3d Map and Sky Map from Windows release. PR #2316
|
||||
* Removed .deb package build from Appveyor
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Mom, 11 Nov 2024 08:42:03 +0100
|
||||
|
||||
sdrangel (7.22.3-1) unstable; urgency=medium
|
||||
|
||||
* Add deb dependencies for pipewire. PR #2314
|
||||
* Added compilation options for WebAssembly. PR #2313
|
||||
* ADS-B: Use settings keys. PR #2310
|
||||
* AIS Demod: Remove spacing around messages. PR #2310
|
||||
* Freuqency Scanner: Add multiplex mode. PR #2310
|
||||
* Build snap, MAC, Windows and Ubuntu .deb with Github actions. Various PRs
|
||||
* Server: Use Sink/MIMO signals rather than Source. Part of #2294. PR #2304
|
||||
* Updated some Python scripts to Python3. PR #2298
|
||||
* RemoteTCPSink: Does use IQ only setting for RTL0. PR #2301
|
||||
* Server: wait for set sample source/sink/MIMO to complete before loading the device settings. Fixes #2294
|
||||
* Fix spectrum peak measurement for SSB spectra. Fixes #2282. PR #2299
|
||||
* Upgrade C++ standard to c++17
|
||||
* Fixes for Android . PR #2288
|
||||
* Add qtshadertools. PR #2287
|
||||
* Add more Qt modules and set ENABLE_QT6=ON. PR #2287
|
||||
* Update Qt optional packages for 6.8 , PR #2287
|
||||
* Use Qt 6.8 for Windows build. PR #2287
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sat, 09 Nov 2024 17:30:44 +0100
|
||||
|
||||
sdrangel (7.22.2-1) unstable; urgency=medium
|
||||
|
||||
* ChirpChat: increased preamble symbols limit from 20 to 32. Fixes #2284
|
||||
* RTLSDR: Apply driver settings in RTLSDRThread Add sync read for WebAssembly. PR #2281
|
||||
* SSB demod: fixed GUI and returned to previous threading model. Fixes #2273
|
||||
* HeatMap: Catch memory allocation failures... For #2083 PR #2277
|
||||
* Add default-qt6-windows cmake config. PR #2276
|
||||
* Add pager notifications. Add option to ignore duplicates. Support plotting pager messages on the map. PR #2276
|
||||
* Don't load defaults if loading a preset. PR #2274
|
||||
* DeviceGUI::closeEvent - Don't automatically delete the GUI,.. PR #2274
|
||||
* MainWindow: Add FSMs to avoid blocking on the GUI thread... PR #2274
|
||||
* Fix replay buffer when FixReal is qint16. PR #2270
|
||||
* snap: Try to get version number from latest tag. PR #2270
|
||||
* Add libflac to snap. Set ARCH_OPT to nehalem. PR #2270
|
||||
* Fix flac on Mac. PR #2270
|
||||
* RemoteTCP: Update docs. PR #2270
|
||||
* Map: Fix Kiwi list. Add SDRangel wss support. PR #2270
|
||||
* RemoteTCPSink: Report server init errors via GUI. Send protocol to public list. PR #2270
|
||||
* RemoteTCPInput: Add wss protocol support. PR #2270
|
||||
* Fix DeviceAPI::deserialize. Fixes #2266. PR #2267
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 20 Oct 2024 08:26:38 +0200
|
||||
|
||||
sdrangel (7.22.1-1) unstable; urgency=medium
|
||||
|
||||
* wdsprx: Fix path to help file.
|
||||
* Removed SyncMessenger from DSPDeviceSourceEngine. Part of #2159
|
||||
* Fixed threading model for DSPDeviceSourceEngine. Part of #2159
|
||||
* Removed SyncMessenger from DSPDeviceMIMOEngine. Part of #2159
|
||||
* RTLSDR: make sure start and stop are effective once only. PArt of #2159
|
||||
* Fixed threading model for DSPDeviceMIMOEngine plus other fixes. Part of #2159
|
||||
* Removed SyncMessenger from DSPDeviceSinkEngine. Part of #2159
|
||||
* SSBMod, AMMod, NFMMod: revised thread processing
|
||||
* Fixed threading model for DSPDeviceSinkEngine plus other fixes. Part of #2159
|
||||
* DeviceSet and DeviceUISet: use delete channel API instead of destroy method...
|
||||
* BladeRF2Output: removed applySettings from stop method
|
||||
* All device plugins: make sure start and stop are effective once only. PArt of #2159
|
||||
* Removed the destroy method from ChannelGUI interface
|
||||
* DeviceGUI: removed destroy method. Part of #2159
|
||||
* Fix SopaySDR library search when system cmake package present. PR #2245
|
||||
* Append prefix to plugin name when running on Android. PR #2245
|
||||
* Fix compilation with newer ffmpeg libavutil. PR #2245
|
||||
* Fix compilation for Android with Qt6. PR #2245
|
||||
* Bump Cmake minimal version to 3.17
|
||||
* Use new find_package(CUDA Toolkit). PR #2250
|
||||
* Update CMakeLists.txt to allow static libraries to be built, as well as shared... PR #2252
|
||||
* Allow plugins to be compiled as static libs, part 2. PR #2254
|
||||
* Use opencv4 with VS2022. PR #2257
|
||||
* Frequency Scanner: initialize pointer to FrequencyScanner. Fixes #2262
|
||||
* Update channel list upon Morse Decoder and Demod Analyzer GUI creation. Fixes #2263
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 06 Oct 2024 08:39:11 +0200
|
||||
|
||||
sdrangel (7.22.0-1) unstable; urgency=medium
|
||||
|
||||
* New Rx channel based on WDSP. Issue #2156
|
||||
* Added cubehelix based color maps. Issue #2191
|
||||
* Fix API host address in About dialog and debug message. PR #2218
|
||||
* Some cleanup. PR #2212
|
||||
* Added shift to channel marker to take RIT into account. Part of #2156
|
||||
* Added S-meter units to scale engine. Part of #2156
|
||||
* Some typos fixes. PR #2206
|
||||
* Map enhancements and fixes. PR #2187
|
||||
* APT Demod: Check filename suffix is specified. PR #2190
|
||||
* Don't change filenames on Android, PR #2190
|
||||
* Frequency Scanner: Fix rounding error. PR #2186
|
||||
* Update sdrangel-windows-libraries link to include latest VC redistributable. PR #2185
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Tue, 13 Aug 2024 17:01:01 +0200
|
||||
|
||||
sdrangel (7.21.4-1) unstable; urgency=medium
|
||||
|
||||
* Code fixes. PR #2184
|
||||
|
@ -1,4 +1,4 @@
|
||||
cmake_minimum_required(VERSION 3.13.0)
|
||||
cmake_minimum_required(VERSION 3.17.0)
|
||||
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
|
||||
|
||||
@ -11,7 +11,7 @@ endif()
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules)
|
||||
|
||||
# disable only when needed
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
@ -19,8 +19,8 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
# configure version
|
||||
set(sdrangel_VERSION_MAJOR "7")
|
||||
set(sdrangel_VERSION_MINOR "21")
|
||||
set(sdrangel_VERSION_PATCH "4")
|
||||
set(sdrangel_VERSION_MINOR "22")
|
||||
set(sdrangel_VERSION_PATCH "8")
|
||||
set(sdrangel_VERSION_SUFFIX "")
|
||||
|
||||
# SDRAngel cmake options
|
||||
@ -30,6 +30,7 @@ option(SANITIZE_MEMORY "Activate detection of leaked memory (LeakSanitizer)" OFF
|
||||
option(RX_SAMPLE_24BIT "Internal 24 bit Rx DSP" ON)
|
||||
option(BUILD_SERVER "Build Server" ON)
|
||||
option(BUILD_GUI "Build GUI" ON)
|
||||
option(BUILD_BENCH "Build benchmark" ON)
|
||||
option(HIDE_CONSOLE "Hide console when running GUI on Windows" ON)
|
||||
option(BUNDLE "Enable distribution bundle" OFF)
|
||||
set(ARCH_OPT "native" CACHE STRING "Specify instruction set to use. Will be passed directly as `-march` or `/arch:` argument on supported compilers. \
|
||||
@ -37,8 +38,10 @@ set(ARCH_OPT "native" CACHE STRING "Specify instruction set to use. Will be pass
|
||||
option(ENABLE_QT6 "Build with Qt6 rather than Qt5" OFF)
|
||||
option(ENABLE_PROFILER "Enable runtime profiler" OFF)
|
||||
set(VKFFT_BACKEND 1 CACHE STRING "vkFFT Backend: 0 - Vulkan, 1 - CUDA")
|
||||
option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
|
||||
|
||||
# Sampling devices enablers
|
||||
option(ENABLE_AARONIARTSA "Enable AaroniaRTSA support" ON)
|
||||
option(ENABLE_AIRSPY "Enable AirSpy support" ON)
|
||||
option(ENABLE_AIRSPYHF "Enable AirSpyHF support" ON)
|
||||
option(ENABLE_BLADERF "Enable bladeRF support" ON)
|
||||
@ -46,6 +49,7 @@ option(ENABLE_FUNCUBE "Enable FUNcube support" ON)
|
||||
option(ENABLE_HACKRF "Enable HackRF support" ON)
|
||||
option(ENABLE_IIO "Enable liniio support like PlutoSDR" ON)
|
||||
option(ENABLE_LIMESUITE "Enable limesuite support" ON)
|
||||
option(ENABLE_METIS "Enable Metis support" ON)
|
||||
option(ENABLE_MIRISDR "Enable LibMiri for old SDRPlay" ON)
|
||||
option(ENABLE_PERSEUS "Enable perseus support" ON)
|
||||
option(ENABLE_RTLSDR "Enable rtl-sdr support" ON)
|
||||
@ -96,6 +100,7 @@ option(ENABLE_CHANNELRX_HEATMAP "Enable channelrx heatmap plugin" ON)
|
||||
option(ENABLE_CHANNELRX_FREQSCANNER "Enable channelrx freqscanner plugin" ON)
|
||||
option(ENABLE_CHANNELRX_ENDOFTRAIN "Enable channelrx end-of-train plugin" ON)
|
||||
option(ENABLE_CHANNELRX_CHANNELPOWER "Enable channelrx channel power plugin" ON)
|
||||
option(ENABLE_CHANNELRX_WDSPRX "Enable channelrx WDSP receiver plugin" ON)
|
||||
|
||||
# Channel Tx enablers
|
||||
option(ENABLE_CHANNELTX "Enable channeltx plugins" ON)
|
||||
@ -181,7 +186,7 @@ if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git/")
|
||||
endif()
|
||||
|
||||
find_program(CCACHE "ccache")
|
||||
if(CCACHE)
|
||||
if(CCACHE AND NOT EMSCRIPTEN)
|
||||
message(STATUS "Using ccache ${CCACHE}")
|
||||
set(CMAKE_C_COMPILER_LAUNCHER ${CCACHE})
|
||||
set(CMAKE_CXX_COMPILER_LAUNCHER ${CCACHE})
|
||||
@ -189,7 +194,7 @@ if(CCACHE)
|
||||
set(CMAKE_OBJCXX_COMPILER_LAUNCHER ${CCACHE})
|
||||
endif()
|
||||
set(ENV{CCACHE_SLOPPINESS} pch_defines,time_macros)
|
||||
endif(CCACHE)
|
||||
endif()
|
||||
|
||||
set(sdrangel_VERSION "${sdrangel_VERSION_MAJOR}.${sdrangel_VERSION_MINOR}.${sdrangel_VERSION_PATCH}${sdrangel_VERSION_SUFFIX}" CACHE INTERNAL "")
|
||||
message(STATUS "${APPLICATION_NAME} Version: ${sdrangel_VERSION}")
|
||||
@ -268,6 +273,15 @@ else()
|
||||
endif()
|
||||
set(INSTALL_PLUGINS_DIR "${INSTALL_LIB_DIR}/plugins")
|
||||
set(INSTALL_PLUGINSSRV_DIR "${INSTALL_LIB_DIR}/pluginssrv")
|
||||
|
||||
if(ANDROID)
|
||||
set(PLUGINS_PREFIX "sdrangel_plugins_")
|
||||
set(PLUGINSSRV_PREFIX "sdrangel_pluginssrv_")
|
||||
set(ANDROID_PACKAGE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/android/qt6 CACHE INTERNAL "")
|
||||
else()
|
||||
set(PLUGINS_PREFIX "")
|
||||
set(PLUGINSSRV_PREFIX "")
|
||||
endif()
|
||||
set(EXTERNAL_BUILD_LIBRARIES "${CMAKE_BINARY_DIR}/external")
|
||||
|
||||
# custom libraries
|
||||
@ -334,7 +348,7 @@ elseif (WIN32)
|
||||
set(LIBUSB_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/libusb/MS64/dll/libusb-1.0.lib" CACHE INTERNAL "")
|
||||
set(LIBUSB_DLL_DIR "${EXTERNAL_LIBRARY_FOLDER}/libusb/MS64/dll" CACHE INTERNAL "")
|
||||
|
||||
if(VS2019)
|
||||
if(VS2022 OR VS2019)
|
||||
set(OpenCV_DIR "${EXTERNAL_LIBRARY_FOLDER}/opencv4" CACHE INTERNAL "")
|
||||
else()
|
||||
set(OpenCV_DIR "${EXTERNAL_LIBRARY_FOLDER}/opencv" CACHE INTERNAL "")
|
||||
@ -415,7 +429,7 @@ if(VS2019)
|
||||
elseif(ANDROID)
|
||||
set(EXTERNAL_LIBRARY_FOLDER "${CMAKE_SOURCE_DIR}/external/android")
|
||||
|
||||
set(Boost_INCLUDE_DIR "${EXTERNAL_LIBRARY_FOLDER}/ndk_21_boost_1.72.0/include" CACHE INTERNAL "")
|
||||
set(Boost_INCLUDE_DIR "${EXTERNAL_LIBRARY_FOLDER}/ndk_26b_boost_1.83.0/include" CACHE INTERNAL "")
|
||||
|
||||
set(FFTW3F_FOUND ON CACHE INTERNAL "")
|
||||
set(FFTW3F_INCLUDE_DIRS "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/fftw-3/include" CACHE INTERNAL "")
|
||||
@ -472,6 +486,14 @@ elseif(ANDROID)
|
||||
set(SWSCALE_INCLUDE_DIRS "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/include" CACHE INTERNAL "")
|
||||
set(SWSCALE_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/lib/libswscale.so" CACHE INTERNAL "")
|
||||
|
||||
set(GGMORSE_FOUND ON CACHE INTERNAL "")
|
||||
set(GGMORSE_INCLUDE_DIR "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ggmorse/include/" CACHE INTERNAL "")
|
||||
set(GGMORSE_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ggmorse/lib/static/libggmorse.a" CACHE INTERNAL "")
|
||||
|
||||
set(FLAC_FOUND ON CACHE INTERNAL "")
|
||||
set(FLAC_INCLUDE_DIR "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/flac/include/" CACHE INTERNAL "")
|
||||
set(FLAC_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/flac/lib/libFLAC.so" CACHE INTERNAL "")
|
||||
|
||||
set(LIBUSB_FOUND ON CACHE INTERNAL "")
|
||||
set(LIBUSB_INCLUDE_DIR "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/libusb/include/" CACHE INTERNAL "")
|
||||
set(LIBUSB_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/libusb/lib/libusb1.0.so" CACHE INTERNAL "")
|
||||
@ -494,11 +516,6 @@ elseif(ANDROID)
|
||||
|
||||
if (ENABLE_QT6)
|
||||
set(ANDROID_EXTRA_LIBS
|
||||
${Qt6_DIR}/../../../android_arm64_v8a/lib/libQt6Charts_arm64-v8a.so
|
||||
${Qt6_DIR}/../../../android_arm64_v8a/lib/libQt6Concurrent_arm64-v8a.so
|
||||
${Qt6_DIR}/../../../android_arm64_v8a/lib/libQt6MultimediaWidgets_arm64-v8a.so
|
||||
${Qt6_DIR}/../../../android_arm64_v8a/lib/libQt6SerialPort_arm64-v8a.so
|
||||
${Qt6_DIR}/../../../android_arm64_v8a/lib/libQt6TextToSpeech_arm64-v8a.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/android_openssl/latest/arm64/libssl_1_1.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/android_openssl/latest/arm64/libcrypto_1_1.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/lib/libavcodec.so
|
||||
@ -513,6 +530,7 @@ elseif(ANDROID)
|
||||
${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/dsdcc/lib/libdsdcc.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/libusb/lib/libunrooted_android.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/libusb/lib/libusb1.0.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/flac/lib/libFLAC.so
|
||||
CACHE INTERNAL ""
|
||||
)
|
||||
else()
|
||||
@ -563,6 +581,7 @@ elseif(ANDROID)
|
||||
${EXTERNAL_LIBRARY_FOLDER}/arm64-v8a/dsdcc/lib/libdsdcc.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/arm64-v8a/libusb/lib/libunrooted_android.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/arm64-v8a/libusb/lib/libusb1.0.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/arm64-v8a/flac/lib/libFLAC.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/ffmpeg/lib/libavcodec.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/ffmpeg/lib/libavdevice.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/ffmpeg/lib/libavfilter.so
|
||||
@ -575,9 +594,11 @@ elseif(ANDROID)
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/dsdcc/lib/libdsdcc.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/libusb/lib/libunrooted_android.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/libusb/lib/libusb1.0.so
|
||||
${EXTERNAL_LIBRARY_FOLDER}/armeabi-v7a/flac/lib/libFLAC.so
|
||||
CACHE INTERNAL ""
|
||||
)
|
||||
endif()
|
||||
add_compile_definitions(ANDROID)
|
||||
endif()
|
||||
|
||||
# When building a bundle on MacOS, we want to keep build paths in the library
|
||||
@ -636,8 +657,7 @@ if(ENABLE_QT6)
|
||||
MultimediaWidgets
|
||||
Positioning
|
||||
Charts
|
||||
SerialPort
|
||||
Core5Compat)
|
||||
SerialPort)
|
||||
else()
|
||||
find_package(Qt5 5.15
|
||||
REQUIRED COMPONENTS
|
||||
@ -658,13 +678,15 @@ if (BUILD_GUI)
|
||||
if (ENABLE_QT6)
|
||||
find_package(Qt6
|
||||
REQUIRED COMPONENTS
|
||||
Location
|
||||
OpenGL
|
||||
OpenGLWidgets
|
||||
Quick
|
||||
QuickWidgets
|
||||
TextToSpeech
|
||||
Svg
|
||||
SvgWidgets)
|
||||
SvgWidgets
|
||||
StateMachine)
|
||||
else()
|
||||
find_package(Qt5
|
||||
REQUIRED COMPONENTS
|
||||
@ -689,6 +711,7 @@ if (BUILD_GUI)
|
||||
QuickWidgets
|
||||
Svg
|
||||
SvgWidgets
|
||||
StateMachine
|
||||
OPTIONAL_COMPONENTS
|
||||
WebEngineQuick
|
||||
WebEngineCore
|
||||
@ -713,8 +736,27 @@ if (BUILD_GUI)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# List of static plugins to link with - This is appended to by each pluging CMakeLists.txt
|
||||
set_property(GLOBAL PROPERTY STATIC_PLUGINS_PROPERTY "")
|
||||
|
||||
if(Qt${QT_DEFAULT_MAJOR_VERSION}Positioning_FOUND)
|
||||
add_compile_definitions(QT_POSITIONING_FOUND)
|
||||
endif()
|
||||
if(Qt${QT_DEFAULT_MAJOR_VERSION}Location_FOUND)
|
||||
add_compile_definitions(QT_LOCATION_FOUND)
|
||||
endif()
|
||||
if(Qt${QT_DEFAULT_MAJOR_VERSION}Charts_FOUND)
|
||||
add_compile_definitions(QT_CHARTS_FOUND)
|
||||
endif()
|
||||
if(Qt${QT_DEFAULT_MAJOR_VERSION}TextToSpeech_FOUND)
|
||||
add_compile_definitions(QT_TEXTTOSPEECH_FOUND)
|
||||
endif()
|
||||
if(BUILD_SHARED_LIBS)
|
||||
add_compile_definitions(BUILD_SHARED_LIBS)
|
||||
endif()
|
||||
|
||||
# other requirements
|
||||
if(NOT ANDROID)
|
||||
if(NOT ANDROID AND NOT EMSCRIPTEN)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
endif()
|
||||
|
||||
@ -859,13 +901,15 @@ if (FFTW3F_FOUND)
|
||||
set(FT8_SUPPORT ON CACHE INTERNAL "")
|
||||
endif()
|
||||
|
||||
if (FFTW3F_FOUND AND LINUX)
|
||||
if (FFTW3F_FOUND)
|
||||
add_subdirectory(wdsp)
|
||||
add_definitions(-DHAS_WDSP)
|
||||
set(WDSP_SUPPORT ON CACHE INTERNAL "")
|
||||
endif()
|
||||
|
||||
if (BUILD_BENCH)
|
||||
add_subdirectory(sdrbench)
|
||||
endif()
|
||||
|
||||
if (BUILD_GUI)
|
||||
add_subdirectory(sdrgui)
|
||||
@ -936,6 +980,7 @@ else()
|
||||
endif()
|
||||
|
||||
############ build sdrangel benchmark ################
|
||||
if (BUILD_BENCH)
|
||||
set(sdrangelbench_SOURCES
|
||||
appbench/main.cpp
|
||||
)
|
||||
@ -949,6 +994,7 @@ target_link_libraries(sdrangelbench
|
||||
sdrbench
|
||||
logging
|
||||
)
|
||||
endif()
|
||||
|
||||
############ build sdrangel gui ################
|
||||
if (BUILD_GUI)
|
||||
@ -1042,7 +1088,9 @@ if (BUILD_SERVER)
|
||||
endif()
|
||||
|
||||
############ install ##################
|
||||
if (BUILD_BENCH)
|
||||
install(TARGETS sdrangelbench DESTINATION ${INSTALL_BIN_DIR})
|
||||
endif()
|
||||
if (BUILD_GUI)
|
||||
install(TARGETS ${CMAKE_PROJECT_NAME} DESTINATION ${INSTALL_BIN_DIR})
|
||||
endif()
|
||||
|
@ -80,6 +80,15 @@
|
||||
"cacheVariables": {
|
||||
"ENABLE_QT6": "ON"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "default-qt6-windows",
|
||||
"inherits": "default-windows",
|
||||
"binaryDir": "${sourceDir}/build-qt6",
|
||||
"cacheVariables": {
|
||||
"ENABLE_QT6": "ON",
|
||||
"CMAKE_PREFIX_PATH": "C:/Qt/6.7.3/msvc2022_64;C:/Applications/boost_1_81_0"
|
||||
}
|
||||
}
|
||||
],
|
||||
"buildPresets": [
|
||||
@ -94,6 +103,10 @@
|
||||
{
|
||||
"name": "default-qt6",
|
||||
"configurePreset": "default-qt6"
|
||||
},
|
||||
{
|
||||
"name": "default-qt6-windows",
|
||||
"configurePreset": "default-qt6-windows"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
21
app/main.cpp
@ -22,7 +22,6 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <QApplication>
|
||||
#include <QTextCodec>
|
||||
#include <QProxyStyle>
|
||||
#include <QStyleFactory>
|
||||
#include <QFontDatabase>
|
||||
@ -48,10 +47,6 @@
|
||||
|
||||
static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *logger)
|
||||
{
|
||||
/*
|
||||
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
|
||||
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
|
||||
*/
|
||||
QCoreApplication::setOrganizationName(COMPANY);
|
||||
QCoreApplication::setApplicationName(APPLICATION_NAME);
|
||||
QCoreApplication::setApplicationVersion(SDRANGEL_VERSION);
|
||||
@ -148,7 +143,7 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
|
||||
#endif
|
||||
|
||||
#ifdef ANDROID
|
||||
// Default sized sliders can be hard to move using touch GUIs, so increase szie
|
||||
// Default sized sliders can be hard to move using touch GUIs, so increase size
|
||||
// FIXME: How can we do a double border around the handle, as Fusion style seems to use?
|
||||
// Dialog borders are hard to see as is (perhaps as Android doesn't have a title bar), so use same color as for MDI
|
||||
qApp->setStyleSheet("QSlider {min-height: 20px; } "
|
||||
@ -189,11 +184,13 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
|
||||
{
|
||||
// Disable log on console, so we can more easily see device list
|
||||
logger->setConsoleMinMessageLevel(QtFatalMsg);
|
||||
// Don't pass logger to MainWindow, otherwise it can reenable log output
|
||||
// Don't pass logger to MainWindow, otherwise it can re-enable log output
|
||||
logger = nullptr;
|
||||
}
|
||||
|
||||
MainWindow w(logger, parser);
|
||||
MainWindow w(logger, parser);
|
||||
|
||||
w.show();
|
||||
|
||||
if (parser.getListDevices())
|
||||
{
|
||||
@ -202,12 +199,6 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
if (parser.getRemoteTCPSink()) {
|
||||
RemoteTCPSinkStarter::start(parser);
|
||||
}
|
||||
|
||||
w.show();
|
||||
|
||||
return a.exec();
|
||||
}
|
||||
|
||||
@ -217,7 +208,7 @@ int main(int argc, char* argv[])
|
||||
// Request OpenGL 3.3 context, needed for glspectrum and 3D Map feature
|
||||
// Note that Mac only supports CoreProfile, so any deprecated OpenGL 2 features
|
||||
// will not work. Because of this, we have two versions of the shaders:
|
||||
// OpenGL 2 versions for compatiblity with older drivers and OpenGL 3.3
|
||||
// OpenGL 2 versions for compatibility with older drivers and OpenGL 3.3
|
||||
// versions for newer drivers
|
||||
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
|
||||
QGLFormat fmt;
|
||||
|
@ -100,7 +100,7 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
|
||||
{
|
||||
// Disable log on console, so we can more easily see device list
|
||||
logger->setConsoleMinMessageLevel(QtFatalMsg);
|
||||
// Don't pass logger to MainServer, otherwise it can reenable log output
|
||||
// Don't pass logger to MainServer, otherwise it can re-enable log output
|
||||
logger = nullptr;
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,11 @@ if(WIN32)
|
||||
endif()
|
||||
|
||||
if(NOT MSVC)
|
||||
add_compile_options(-Wall -Wextra -Wvla -Woverloaded-virtual -Wno-inconsistent-missing-override -ffast-math -fno-finite-math-only -ftree-vectorize)
|
||||
add_compile_options(-Wall -Wextra -Wvla -ffast-math -fno-finite-math-only -ftree-vectorize)
|
||||
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-Woverloaded-virtual>)
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
||||
add_compile_options(-Wno-inconsistent-missing-override)
|
||||
endif()
|
||||
else()
|
||||
# Disable some warnings, so more useful warnings aren't hidden in the noise
|
||||
# 4996 'fopen': This function or variable may be unsafe. Consider using fopen_s instead.
|
||||
|
31
cmake/Modules/FindFLAC.cmake
Normal file
@ -0,0 +1,31 @@
|
||||
IF(NOT FLAC_FOUND)
|
||||
INCLUDE(FindPkgConfig)
|
||||
PKG_CHECK_MODULES(PC_FLAC flac)
|
||||
|
||||
FIND_PATH(
|
||||
FLAC_INCLUDE_DIR
|
||||
NAMES FLAC/stream_encoder.h
|
||||
HINTS ${PC_FLAC_INCLUDE_DIRS}
|
||||
PATHS /usr/local/include
|
||||
/usr/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(
|
||||
FLAC_LIBRARY
|
||||
NAMES FLAC
|
||||
libFLAC
|
||||
HINTS ${FLAC_DIR}/lib
|
||||
${PC_FLAC_LIBRARY_DIRS}
|
||||
PATHS /usr/local/lib
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
)
|
||||
|
||||
message(STATUS "FLAC LIBRARY " ${FLAC_LIBRARY})
|
||||
message(STATUS "FLAC INCLUDE DIR " ${FLAC_INCLUDE_DIR})
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLAC DEFAULT_MSG FLAC_LIBRARY FLAC_INCLUDE_DIR)
|
||||
MARK_AS_ADVANCED(FLAC_LIBRARY FLAC_INCLUDE_DIR)
|
||||
|
||||
ENDIF(NOT FLAC_FOUND)
|
@ -36,7 +36,7 @@ if(APPLE AND BUNDLE AND BUILD_GUI)
|
||||
set(CPACK_BUNDLE_ICON "${CMAKE_SOURCE_DIR}/cmake/cpack/sdrangel_icon.icns")
|
||||
set(CPACK_BUNDLE_PLIST "${CMAKE_BINARY_DIR}/Info.plist")
|
||||
set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/cmake/cpack/sdrangel_icon.icns")
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION}_${CPACK_MACOS_PACKAGE_ARCHITECTURE}_${CMAKE_SYSTEM_PROCESSOR}" CACHE INTERNAL "")
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION}_mac-${CPACK_MACOS_PACKAGE_ARCHITECTURE}_${CMAKE_SYSTEM_PROCESSOR}" CACHE INTERNAL "")
|
||||
set(CPACK_PRE_BUILD_SCRIPTS "${PROJECT_BINARY_DIR}/deploy_mac.cmake")
|
||||
|
||||
# copy SoapySDR Modules
|
||||
@ -175,7 +175,7 @@ elseif(WIN32 OR MINGW)
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${fftw3f_dll}" "${SDRANGEL_BINARY_BIN_DIR}/"
|
||||
)
|
||||
endforeach(fftw3f_dll)
|
||||
|
||||
|
||||
file(GLOB LIBUSB_DLLS "${LIBUSB_DLL_DIR}/*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
foreach(libusb_dll ${LIBUSB_DLLS})
|
||||
get_filename_component(libusb_dll_name "${libusb_dll}" NAME)
|
||||
|
@ -1,14 +1,15 @@
|
||||
# This CPACK_PRE_BUILD_SCRIPTS script is used to copy all required Qt and other 3rd party libraries (SDR drivers and codecs) in to the .app bundle
|
||||
# It is run in a staging area (${CPACK_TEMPORARY_INSTALL_DIRECTORY}/SDRangel.app) after all targets have been installed (E.g. sdrangel exe and plugins)
|
||||
# The copying of frameworks and libraries is mostly done by 'macdeployqt', however, in order for 'macdeployqt' to copy libraries built by external/CMakeLists.txt,
|
||||
# we first need to add RPATHs into the libraries giving the locations of any libraries they might depend on.
|
||||
# we first need to add RPATHs into the libraries giving the locations of any libraries they might depend on.
|
||||
# These paths are in the variable MACOS_EXTERNAL_LIBS_FIXUP set in externals/CMakeLists.txt
|
||||
# Is there an easier way to this?
|
||||
|
||||
# Copy executable that will be run when icon in /Applications is clicked
|
||||
message ("Copying default executable to SDRangel.app/Contents/MacOS/SDRangel")
|
||||
execute_process (COMMAND mkdir ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/SDRangel.app/Contents/MacOS/)
|
||||
execute_process (COMMAND cp /opt/build/sdrangel/build/sdrangel ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/SDRangel.app/Contents/MacOS/SDRangel)
|
||||
execute_process (COMMAND pwd)
|
||||
execute_process (COMMAND cp sdrangel ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/SDRangel.app/Contents/MacOS/SDRangel)
|
||||
|
||||
|
||||
# Add RPATHS to libraries so macdeployqt can find out and copy all dependencies
|
||||
|
144
debian/changelog
vendored
@ -1,3 +1,147 @@
|
||||
sdrangel (7.22.8-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Wed, 02 Jul 2025 17:00:39 +0200
|
||||
|
||||
sdrangel (7.22.7-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 04 May 2025 17:58:14 +0200
|
||||
|
||||
sdrangel (7.22.6-1) unstable; urgency=medium
|
||||
|
||||
* See Github release
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 02 Feb 2025 18:08:11 +0100
|
||||
|
||||
sdrangel (7.22.5-1) unstable; urgency=medium
|
||||
|
||||
* Windows: upload signed releases rather than unsigned releases to Github releases page. PR #2347
|
||||
* Windows: fixed signed releases. PR #2344
|
||||
* FT8 Demod: limit upper bandwidth to 5.8 kHz. Fixes #2339
|
||||
* Stop device while changing channel set. Fixes #2332. PR #2342
|
||||
* ADSB: Update URL of OpenSkyNetwork Aircraft database. PR #2341
|
||||
* Don't stop source if being deleted. For #2315. PR #2340
|
||||
* Send DSPSignalNotification in audio mods for #2336. PR #2340
|
||||
* Radiosonde: limit precision of floating point numbers sent to SondeHub. PR #2338
|
||||
* Windows signed releases: use relative path. Increase timeout to 30 minutes. PR #2335
|
||||
* ADSB: Include adsbdemodsettings.h PR #2334
|
||||
* Use release signing certificate for Windows installer. PR #2331
|
||||
* Fix memory leak and race condition relating to DSP*Engines. Part of #2159 PR #2330
|
||||
* FreeDV: Fix memory allocation/free issues. Part of #2315. PR #2330
|
||||
* Wav Files: Add support for meta-data. PR #2328
|
||||
* DemodAnalyzer: Ensure sample rate is set in worker. Fixes #2309. PR #2328
|
||||
^ SDRplayv3: Mac: link with libsdrplay_api.so.3 rather than libsdrplay_api.so.3.15. PR #2327
|
||||
* ADS-B: Fix memory use after delete. For #1734 and part of #2315 PR #2326
|
||||
* Fixed Appveyor Docker image build
|
||||
* Fix output-artifact-directory and unzip file. PR #2323
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Thu, 05 Dec 2024 01:07:27 +0100
|
||||
|
||||
sdrangel (7.22.4-1) unstable; urgency=medium
|
||||
|
||||
* Use macos-12 for Mac x86 build. PR #2321
|
||||
* Workaround for "hdiutil: create failed - Resource busy"
|
||||
* Pager: Add alpha and numeric columns. Implements #2319. PR #2320
|
||||
* Added qtwebchannel dependecy to fix missing 3d Map and Sky Map from Windows release. PR #2316
|
||||
* Removed .deb package build from Appveyor
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Mom, 11 Nov 2024 08:42:03 +0100
|
||||
|
||||
sdrangel (7.22.3-1) unstable; urgency=medium
|
||||
|
||||
* Add deb dependencies for pipewire. PR #2314
|
||||
* Added compilation options for WebAssembly. PR #2313
|
||||
* ADS-B: Use settings keys. PR #2310
|
||||
* AIS Demod: Remove spacing around messages. PR #2310
|
||||
* Freuqency Scanner: Add multiplex mode. PR #2310
|
||||
* Build snap, MAC, Windows and Ubuntu .deb with Github actions. Various PRs
|
||||
* Server: Use Sink/MIMO signals rather than Source. Part of #2294. PR #2304
|
||||
* Updated some Python scripts to Python3. PR #2298
|
||||
* RemoteTCPSink: Does use IQ only setting for RTL0. PR #2301
|
||||
* Server: wait for set sample source/sink/MIMO to complete before loading the device settings. Fixes #2294
|
||||
* Fix spectrum peak measurement for SSB spectra. Fixes #2282. PR #2299
|
||||
* Upgrade C++ standard to c++17
|
||||
* Fixes for Android . PR #2288
|
||||
* Add qtshadertools. PR #2287
|
||||
* Add more Qt modules and set ENABLE_QT6=ON. PR #2287
|
||||
* Update Qt optional packages for 6.8 , PR #2287
|
||||
* Use Qt 6.8 for Windows build. PR #2287
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sat, 09 Nov 2024 17:30:44 +0100
|
||||
|
||||
sdrangel (7.22.2-1) unstable; urgency=medium
|
||||
|
||||
* ChirpChat: increased preamble symbols limit from 20 to 32. Fixes #2284
|
||||
* RTLSDR: Apply driver settings in RTLSDRThread Add sync read for WebAssembly. PR #2281
|
||||
* SSB demod: fixed GUI and returned to previous threading model. Fixes #2273
|
||||
* HeatMap: Catch memory allocation failures... For #2083 PR #2277
|
||||
* Add default-qt6-windows cmake config. PR #2276
|
||||
* Add pager notifications. Add option to ignore duplicates. Support plotting pager messages on the map. PR #2276
|
||||
* Don't load defaults if loading a preset. PR #2274
|
||||
* DeviceGUI::closeEvent - Don't automatically delete the GUI,.. PR #2274
|
||||
* MainWindow: Add FSMs to avoid blocking on the GUI thread... PR #2274
|
||||
* Fix replay buffer when FixReal is qint16. PR #2270
|
||||
* snap: Try to get version number from latest tag. PR #2270
|
||||
* Add libflac to snap. Set ARCH_OPT to nehalem. PR #2270
|
||||
* Fix flac on Mac. PR #2270
|
||||
* RemoteTCP: Update docs. PR #2270
|
||||
* Map: Fix Kiwi list. Add SDRangel wss support. PR #2270
|
||||
* RemoteTCPSink: Report server init errors via GUI. Send protocol to public list. PR #2270
|
||||
* RemoteTCPInput: Add wss protocol support. PR #2270
|
||||
* Fix DeviceAPI::deserialize. Fixes #2266. PR #2267
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 20 Oct 2024 08:26:38 +0200
|
||||
|
||||
sdrangel (7.22.1-1) unstable; urgency=medium
|
||||
|
||||
* wdsprx: Fix path to help file.
|
||||
* Removed SyncMessenger from DSPDeviceSourceEngine. Part of #2159
|
||||
* Fixed threading model for DSPDeviceSourceEngine. Part of #2159
|
||||
* Removed SyncMessenger from DSPDeviceMIMOEngine. Part of #2159
|
||||
* RTLSDR: make sure start and stop are effective once only. PArt of #2159
|
||||
* Fixed threading model for DSPDeviceMIMOEngine plus other fixes. Part of #2159
|
||||
* Removed SyncMessenger from DSPDeviceSinkEngine. Part of #2159
|
||||
* SSBMod, AMMod, NFMMod: revised thread processing
|
||||
* Fixed threading model for DSPDeviceSinkEngine plus other fixes. Part of #2159
|
||||
* DeviceSet and DeviceUISet: use delete channel API instead of destroy method...
|
||||
* BladeRF2Output: removed applySettings from stop method
|
||||
* All device plugins: make sure start and stop are effective once only. PArt of #2159
|
||||
* Removed the destroy method from ChannelGUI interface
|
||||
* DeviceGUI: removed destroy method. Part of #2159
|
||||
* Fix SopaySDR library search when system cmake package present. PR #2245
|
||||
* Append prefix to plugin name when running on Android. PR #2245
|
||||
* Fix compilation with newer ffmpeg libavutil. PR #2245
|
||||
* Fix compilation for Android with Qt6. PR #2245
|
||||
* Bump Cmake minimal version to 3.17
|
||||
* Use new find_package(CUDA Toolkit). PR #2250
|
||||
* Update CMakeLists.txt to allow static libraries to be built, as well as shared... PR #2252
|
||||
* Allow plugins to be compiled as static libs, part 2. PR #2254
|
||||
* Use opencv4 with VS2022. PR #2257
|
||||
* Frequency Scanner: initialize pointer to FrequencyScanner. Fixes #2262
|
||||
* Update channel list upon Morse Decoder and Demod Analyzer GUI creation. Fixes #2263
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 06 Oct 2024 08:39:11 +0200
|
||||
|
||||
sdrangel (7.22.0-1) unstable; urgency=medium
|
||||
|
||||
* New Rx channel based on WDSP. Issue #2156
|
||||
* Added cubehelix based color maps. Issue #2191
|
||||
* Fix API host address in About dialog and debug message. PR #2218
|
||||
* Some cleanup. PR #2212
|
||||
* Added shift to channel marker to take RIT into account. Part of #2156
|
||||
* Added S-meter units to scale engine. Part of #2156
|
||||
* Some typos fixes. PR #2206
|
||||
* Map enhancements and fixes. PR #2187
|
||||
* APT Demod: Check filename suffix is specified. PR #2190
|
||||
* Don't change filenames on Android, PR #2190
|
||||
* Frequency Scanner: Fix rounding error. PR #2186
|
||||
* Update sdrangel-windows-libraries link to include latest VC redistributable. PR #2185
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Tue, 13 Aug 2024 17:01:01 +0200
|
||||
|
||||
sdrangel (7.21.4-1) unstable; urgency=medium
|
||||
|
||||
* Code fixes. PR #2184
|
||||
|
8
debian/control
vendored
@ -42,9 +42,12 @@ Build-Depends: debhelper (>= 9),
|
||||
libopencv-imgcodecs-dev,
|
||||
libxml2-dev,
|
||||
bison,
|
||||
cmake,
|
||||
flex,
|
||||
ffmpeg,
|
||||
ninja-build,
|
||||
libfaad-dev,
|
||||
libflac-dev,
|
||||
libavcodec-dev,
|
||||
libavformat-dev,
|
||||
libopus-dev,
|
||||
@ -62,12 +65,13 @@ Architecture: any
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends},
|
||||
libasound2,
|
||||
libgl1-mesa-glx,
|
||||
libgl1,
|
||||
libglx-mesa0,
|
||||
libqt5multimedia5-plugins,
|
||||
libqt5gamepad5,
|
||||
libqt5svg5,
|
||||
qtspeech5-speechd-plugin,
|
||||
pulseaudio,
|
||||
pulseaudio | pipewire-pulse,
|
||||
ffmpeg,
|
||||
gstreamer1.0-libav,
|
||||
qml-module-qtlocation,
|
||||
|
@ -40,4 +40,6 @@ if(ENABLE_USRP AND UHD_FOUND)
|
||||
add_subdirectory(usrp)
|
||||
endif()
|
||||
|
||||
add_subdirectory(metis)
|
||||
if(ENABLE_METIS)
|
||||
add_subdirectory(metis)
|
||||
endif()
|
||||
|
@ -27,9 +27,14 @@ set_target_properties(soapysdrdevice
|
||||
|
||||
target_link_libraries(soapysdrdevice
|
||||
${SOAPYSDR_LINK_LIBRARIES}
|
||||
${SOAPYSDR_LIBRARIES}
|
||||
sdrbase
|
||||
)
|
||||
|
||||
target_link_directories(soapysdrdevice PRIVATE
|
||||
${SOAPYSDR_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
if(SOAPYSDR_EXTERNAL AND NOT LINUX)
|
||||
add_dependencies(soapysdrdevice soapysdr)
|
||||
endif()
|
||||
|
@ -40,7 +40,7 @@ bool DeviceUSRPParams::open(const QString &deviceStr, bool channelNumOnly)
|
||||
qDebug() << "DeviceUSRPParams::open: m_nbRxChannels: " << m_nbRxChannels << " m_nbTxChannels: " << m_nbTxChannels;
|
||||
|
||||
// Speed up program initialisation, by not getting all properties
|
||||
// If we could find out number of channles without ::make ing the device
|
||||
// If we could find out number of channels without ::make ing the device
|
||||
// that would be even better
|
||||
if (!channelNumOnly)
|
||||
{
|
||||
|
Before ![]() (image error) Size: 640 KiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
BIN
doc/img/ADSBDemod_plugin_chart.png
Normal file
After ![]() (image error) Size: 43 KiB |
BIN
doc/img/ADSBDemod_plugin_coverage.png
Normal file
After ![]() (image error) Size: 217 KiB |
Before ![]() (image error) Size: 39 KiB After ![]() (image error) Size: 37 KiB ![]() ![]() |
BIN
doc/img/ADSBDemod_plugin_displaysettings_map.png
Normal file
After ![]() (image error) Size: 43 KiB |
BIN
doc/img/ADSBDemod_plugin_ic.png
Normal file
After ![]() (image error) Size: 181 KiB |
Before ![]() (image error) Size: 490 KiB After ![]() (image error) Size: 844 KiB ![]() ![]() |
Before ![]() (image error) Size: 570 KiB After ![]() (image error) Size: 819 KiB ![]() ![]() |
Before ![]() (image error) Size: 372 KiB After ![]() (image error) Size: 2.3 MiB ![]() ![]() |
BIN
doc/img/ADSBDemod_plugin_radius.png
Normal file
After ![]() (image error) Size: 259 KiB |
Before ![]() (image error) Size: 24 KiB After ![]() (image error) Size: 42 KiB ![]() ![]() |
BIN
doc/img/ADSBDemod_plugin_stats.png
Normal file
After ![]() (image error) Size: 93 KiB |
Before ![]() (image error) Size: 41 KiB After ![]() (image error) Size: 49 KiB ![]() ![]() |
Before ![]() (image error) Size: 351 KiB After ![]() (image error) Size: 19 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.6 MiB ![]() ![]() |
Before ![]() (image error) Size: 603 KiB After ![]() (image error) Size: 1.4 MiB ![]() ![]() |
BIN
doc/img/Map_plugin_aurora.png
Normal file
After ![]() (image error) Size: 859 KiB |
Before ![]() (image error) Size: 547 KiB After ![]() (image error) Size: 1.2 MiB ![]() ![]() |
Before ![]() (image error) Size: 36 KiB After ![]() (image error) Size: 53 KiB ![]() ![]() |
BIN
doc/img/Map_plugin_magdec.png
Normal file
After ![]() (image error) Size: 1.6 MiB |
BIN
doc/img/Map_plugin_maidenhead_converter.png
Normal file
After ![]() (image error) Size: 16 KiB |
BIN
doc/img/Map_plugin_maidenhead_grid1.png
Normal file
After ![]() (image error) Size: 426 KiB |
BIN
doc/img/Map_plugin_maidenhead_grid2.png
Normal file
After ![]() (image error) Size: 473 KiB |
BIN
doc/img/Map_plugin_pfd.png
Normal file
After ![]() (image error) Size: 745 KiB |
Before ![]() (image error) Size: 14 KiB After ![]() (image error) Size: 15 KiB ![]() ![]() |
BIN
doc/img/PagerDemod_plugin_notifications.png
Normal file
After ![]() (image error) Size: 32 KiB |
Before ![]() (image error) Size: 24 KiB After ![]() (image error) Size: 59 KiB ![]() ![]() |
Before ![]() (image error) Size: 15 KiB After ![]() (image error) Size: 34 KiB ![]() ![]() |
BIN
doc/img/RemoteTCPSink_settings.png
Normal file
After ![]() (image error) Size: 54 KiB |
BIN
doc/img/WDSPRx_AGC.png
Normal file
After ![]() (image error) Size: 92 KiB |
BIN
doc/img/WDSPRx_AGC_dialog.png
Normal file
After ![]() (image error) Size: 11 KiB |
BIN
doc/img/WDSPRx_AGC_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_AM_dialog.png
Normal file
After ![]() (image error) Size: 4.3 KiB |
BIN
doc/img/WDSPRx_AudioPan_dialog.png
Normal file
After ![]() (image error) Size: 5.1 KiB |
BIN
doc/img/WDSPRx_CW_dialog.png
Normal file
After ![]() (image error) Size: 13 KiB |
BIN
doc/img/WDSPRx_CW_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_CWpeak.png
Normal file
After ![]() (image error) Size: 72 KiB |
BIN
doc/img/WDSPRx_EQ.png
Normal file
After ![]() (image error) Size: 160 KiB |
BIN
doc/img/WDSPRx_EQ_dialog.png
Normal file
After ![]() (image error) Size: 33 KiB |
BIN
doc/img/WDSPRx_EQ_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_FM_dialog.png
Normal file
After ![]() (image error) Size: 19 KiB |
BIN
doc/img/WDSPRx_FM_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_NB.png
Normal file
After ![]() (image error) Size: 225 KiB |
BIN
doc/img/WDSPRx_NB2.png
Normal file
After ![]() (image error) Size: 185 KiB |
BIN
doc/img/WDSPRx_NB_dialog.png
Normal file
After ![]() (image error) Size: 21 KiB |
BIN
doc/img/WDSPRx_NB_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_NR.png
Normal file
After ![]() (image error) Size: 174 KiB |
BIN
doc/img/WDSPRx_NR2.png
Normal file
After ![]() (image error) Size: 129 KiB |
BIN
doc/img/WDSPRx_NR_dialog.png
Normal file
After ![]() (image error) Size: 15 KiB |
BIN
doc/img/WDSPRx_NR_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_RXA.png
Normal file
After ![]() (image error) Size: 104 KiB |
BIN
doc/img/WDSPRx_SQ_dialog.png
Normal file
After ![]() (image error) Size: 18 KiB |
BIN
doc/img/WDSPRx_SQ_dialog.xcf
Normal file
BIN
doc/img/WDSPRx_plugin.png
Normal file
After ![]() (image error) Size: 79 KiB |
BIN
doc/img/WDSPRx_plugin.xcf
Normal file
BIN
doc/img/WDSPRx_plugin_A.png
Normal file
After ![]() (image error) Size: 34 KiB |
BIN
doc/img/WDSPRx_plugin_A.xcf
Normal file
BIN
doc/img/WDSPRx_struct.png
Normal file
After ![]() (image error) Size: 47 KiB |
56
external/CMakeLists.txt
vendored
@ -11,9 +11,9 @@
|
||||
set(CODEC2_TAG "v1.0.3")
|
||||
set(CM256CC_TAG c0e92b92aca3d1d36c990b642b937c64d363c559)
|
||||
set(MBELIB_TAG fe83b32c6a60cdd7bce8cecf3c7a0b9ec87a7667)
|
||||
set(SERIALDV_TAG "v1.1.4")
|
||||
set(SERIALDV_TAG "v1.1.5")
|
||||
set(DSDCC_TAG "v1.9.5")
|
||||
set(LIMESUITE_TAG 70e3859a55d8d5353963a5318013c8454594769f)
|
||||
set(LIMESUITE_TAG b39cb61ed03d74c35a2de757d495e901acbb6404)
|
||||
set(BLADERF_TAG "2021.02")
|
||||
set(LIBIIO_TAG 826563e41b5ce9890b75506f672017de8d76d52d)
|
||||
set(AIRSPYHF_TAG "1af81c0ca18944b8c9897c3c98dc0a991815b686")
|
||||
@ -29,17 +29,11 @@ set(SOAPYSDR_SDRPLAY_TAG "soapy-sdrplay-0.2.0")
|
||||
set(SOAPYSDR_AUDIO_TAG "soapy-audio-0.1.1")
|
||||
set(SOAPYSDR_REMOTE_TAG "soapy-remote-0.5.1")
|
||||
set(AIRSPY_TAG "37c768ce9997b32e7328eb48972a7fda0a1f8554")
|
||||
set(HACKRF_TAG "v2022.09.1")
|
||||
set(HACKRF_TAG "v2024.02.1")
|
||||
set(LIBXML2_TAG "v2.10.4")
|
||||
set(UHD_TAG "v4.6.0.0")
|
||||
if (APPLE AND (CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL x86_64))
|
||||
# UHD fails to load with 1.80+
|
||||
set(BOOST_TAG "1.78.0")
|
||||
set(BOOST_TAG2 "1_78_0")
|
||||
else()
|
||||
set(BOOST_TAG "1.83.0")
|
||||
set(BOOST_TAG2 "1_83_0")
|
||||
endif()
|
||||
set(UHD_TAG "v4.7.0.0")
|
||||
set(BOOST_TAG "1.86.0")
|
||||
set(BOOST_TAG2 "1_86_0")
|
||||
|
||||
# For some external project macros
|
||||
include(ExternalProject)
|
||||
@ -60,6 +54,7 @@ if (WIN32)
|
||||
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=${SDRANGEL_BINARY_LIB_DIR}
|
||||
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=${SDRANGEL_BINARY_LIB_DIR}
|
||||
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO=${SDRANGEL_BINARY_LIB_DIR}
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
|
||||
)
|
||||
elseif (LINUX)
|
||||
set(COMMON_CMAKE_ARGS
|
||||
@ -426,6 +421,7 @@ if (NOT FFMPEG_FOUND AND NOT USE_PRECOMPILED_LIBS)
|
||||
if (NOT X265_FOUND OR X265_EXTERNAL)
|
||||
ExternalProject_Add(x265
|
||||
GIT_REPOSITORY https://bitbucket.org/multicoreware/x265_git.git
|
||||
GIT_TAG 4.1
|
||||
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/x265"
|
||||
SOURCE_SUBDIR "source"
|
||||
CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
|
||||
@ -546,7 +542,7 @@ endif (NOT FFMPEG_FOUND AND NOT USE_PRECOMPILED_LIBS)
|
||||
if (NOT OpenCV_FOUND AND NOT USE_PRECOMPILED_LIBS AND ENABLE_CHANNELTX_MODATV)
|
||||
ExternalProject_Add(opencv
|
||||
GIT_REPOSITORY https://github.com/opencv/opencv.git
|
||||
GIT_TAG 4.5.5
|
||||
GIT_TAG 4.10.0
|
||||
DEPENDS "${FFMPEG_DEPENDS}"
|
||||
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/opencv"
|
||||
CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DWITH_FFMPEG=ON -DCMAKE_PREFIX_PATH=${FFMPEG_INSTALL_DIR}
|
||||
@ -851,6 +847,38 @@ if(ENABLE_FEATURE_SATELLITETRACKER OR ENABLE_CHANNELRX_DEMODAPT)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if(ENABLE_CHANNELRX_REMOTETCPSINK)
|
||||
if (WIN32)
|
||||
set(FLAC_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/FLAC.lib" CACHE INTERNAL "")
|
||||
elseif (LINUX)
|
||||
set(FLAC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac-build/src/libFLAC/libFLAC${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
||||
elseif (APPLE)
|
||||
set(FLAC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac-build/src/libFLAC/libFLAC${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
||||
elseif (EMSCRIPTEN)
|
||||
set(FLAC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac-build/src/libFLAC/libFLAC.a" CACHE INTERNAL "")
|
||||
endif()
|
||||
ExternalProject_Add(flac
|
||||
GIT_REPOSITORY https://github.com/xiph/flac.git
|
||||
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/flac"
|
||||
CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DINSTALL_MANPAGES=OFF -DBUILD_SHARED_LIBS=ON -DWITH_FORTIFY_SOURCE=OFF -DWITH_STACK_PROTECTOR=PFF -DBUILD_PROGRAMS=OFF -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DWITH_OGG=OFF -DBUILD_DOCS=OFF
|
||||
BUILD_BYPRODUCTS "${FLAC_LIBRARIES}"
|
||||
INSTALL_COMMAND ""
|
||||
TEST_COMMAND ""
|
||||
)
|
||||
ExternalProject_Get_Property(flac source_dir binary_dir)
|
||||
set_global(FLAC_DEPENDS flac)
|
||||
set_global_cache(FLAC_FOUND ON)
|
||||
set(FLAC_EXTERNAL ON CACHE INTERNAL "")
|
||||
set(FLAC_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac/include" CACHE INTERNAL "")
|
||||
if (WIN32)
|
||||
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/FLAC${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
||||
elseif (APPLE)
|
||||
install(DIRECTORY "${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac-build/src/libFLAC" DESTINATION "${INSTALL_LIB_DIR}"
|
||||
FILES_MATCHING PATTERN "libFLAC*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${EXTERNAL_BUILD_LIBRARIES}/flac/src/flac-build/src/libFLAC")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
# For Morse Decoder feature
|
||||
if(ENABLE_FEATURE_MORSEDECODER)
|
||||
if (WIN32)
|
||||
@ -1546,6 +1574,8 @@ if (WIN32 OR APPLE)
|
||||
-DLIBUSB_LIBRARIES=${LIBUSB_LIBRARIES}
|
||||
-DLIBUSB_INCLUDE_DIR=${LIBUSB_INCLUDE_DIR}
|
||||
${UHD_PYTHON_ARGS}
|
||||
-DPython3_FIND_FRAMEWORK=NEVER
|
||||
-DENABLE_PYTHON_API=OFF
|
||||
-DCMAKE_INSTALL_NAME_DIR=<INSTALL_DIR>/lib
|
||||
TEST_COMMAND ""
|
||||
)
|
||||
|
2
external/windows
vendored
@ -1 +1 @@
|
||||
Subproject commit 983f966a07a808289aff19190f4ff3c1516df149
|
||||
Subproject commit eddef8183524e5aaef978088427d4b22a5afb393
|
@ -81,7 +81,7 @@ void fcdClose(hid_device *phd);
|
||||
FCD_MODE_ENUM fcdGetMode(hid_device *phd);
|
||||
|
||||
/** \brief Get FCD firmware version as string.
|
||||
* \param str The returned vesion number as a 0 terminated string (must be pre-allocated)
|
||||
* \param str The returned version number as a 0 terminated string (must be pre-allocated)
|
||||
* \return The current FCD mode.
|
||||
* \sa FCD_MODE_ENUM
|
||||
*/
|
||||
@ -183,7 +183,7 @@ FCD_MODE_ENUM fcdBlWriteFirmware(hid_device *phd, char *pc, int64_t n64Size);
|
||||
/** \brief Verify firmware in FCd flash.
|
||||
* \param pc Pointer to firmware data to verify against.
|
||||
* \param n64Size Size of the data in pc.
|
||||
* \return The FCD_MODE_BL if verification was succesful.
|
||||
* \return The FCD_MODE_BL if verification was successful.
|
||||
*
|
||||
* This function verifies the firmware currently in the FCd flash against the firmware
|
||||
* image pointed to by pc. The function return FCD_MODE_BL if the verification is OK and
|
||||
|
@ -39,10 +39,14 @@ include_directories(
|
||||
${CMAKE_SOURCE_DIR}/sdrbase
|
||||
)
|
||||
|
||||
add_library(ft8 SHARED
|
||||
add_library(ft8
|
||||
${ft8_SOURCES}
|
||||
)
|
||||
|
||||
if(DEFINED FFTW3F_DEPENDS)
|
||||
add_dependencies(ft8 "${FFTW3F_DEPENDS}")
|
||||
endif()
|
||||
|
||||
target_link_libraries(ft8
|
||||
Boost::disable_autolinking
|
||||
${FFTW3F_LIBRARIES}
|
||||
|
14
ft8/ft8.cpp
@ -652,7 +652,7 @@ void FT8::go(int npasses)
|
||||
// in fractions of bins in off and hz.
|
||||
//
|
||||
|
||||
// just do this once, re-use for every fractional fft_shift
|
||||
// just do this once, reuse for every fractional fft_shift
|
||||
// and down_v7_f() to 200 sps.
|
||||
std::vector<std::complex<float>> bins = fftEngine_->one_fft(
|
||||
samples_, 0, samples_.size());
|
||||
@ -1938,6 +1938,10 @@ void FT8::soft_decode(const FFTEngine::ffts_t &c79, float ll174[])
|
||||
//
|
||||
void FT8::soft_decode_mags(FT8Params& params, const std::vector<std::vector<float>>& mags_, int nbSymbolBits, float ll174[])
|
||||
{
|
||||
if ((nbSymbolBits > 16) || (nbSymbolBits < 1)) {
|
||||
return;
|
||||
}
|
||||
|
||||
std::vector<std::vector<float>> mags = convert_to_snr_gen(params, nbSymbolBits, mags_);
|
||||
// statistics to decide soft probabilities.
|
||||
// distribution of strongest tones, and
|
||||
@ -1949,8 +1953,8 @@ void FT8::soft_decode_mags(FT8Params& params, const std::vector<std::vector<floa
|
||||
int lli = 0;
|
||||
int zoX = 1<<(nbSymbolBits-1);
|
||||
int zoY = nbSymbolBits;
|
||||
int *zeroi = new int[zoX*zoY];
|
||||
int *onei = new int[zoX*zoY];
|
||||
std::vector<int> zeroi(zoX*zoY);
|
||||
std::vector<int> onei(zoX*zoY);
|
||||
|
||||
for (int biti = 0; biti < nbSymbolBits; biti++)
|
||||
{
|
||||
@ -2273,7 +2277,7 @@ std::vector<float> FT8::extract_bits(const std::vector<int> &syms, const std::ve
|
||||
return bits;
|
||||
}
|
||||
|
||||
// decode successive pairs of symbols. exploits the likelyhood
|
||||
// decode successive pairs of symbols. exploits the likelihood
|
||||
// that they have the same phase, by summing the complex
|
||||
// correlations for each possible pair and using the max.
|
||||
void FT8::soft_decode_pairs(
|
||||
@ -2573,7 +2577,7 @@ void FT8::soft_decode_triples(
|
||||
}
|
||||
|
||||
//
|
||||
// given log likelyhood for each bit, try LDPC and OSD decoders.
|
||||
// given log likelihood for each bit, try LDPC and OSD decoders.
|
||||
// on success, puts corrected 174 bits into a174[].
|
||||
//
|
||||
int FT8::decode(const float ll174[], int a174[], FT8Params& _params, int use_osd, std::string &comment)
|
||||
|
@ -85,8 +85,9 @@ struct FT8_API cdecode
|
||||
// total transmission time is 12.64 seconds
|
||||
|
||||
// tunable parameters
|
||||
struct FT8_API FT8Params
|
||||
class FT8_API FT8Params
|
||||
{
|
||||
public:
|
||||
int nthreads; // number of parallel threads, for multi-core
|
||||
int npasses_one; // number of spectral subtraction passes
|
||||
int npasses_two; // number of spectral subtraction passes
|
||||
@ -264,14 +265,14 @@ public:
|
||||
|
||||
FT8Params& getParams() { return params; }
|
||||
//
|
||||
// given log likelyhood for each bit, try LDPC and OSD decoders.
|
||||
// given log likelihood for each bit, try LDPC and OSD decoders.
|
||||
// on success, puts corrected 174 bits into a174[].
|
||||
//
|
||||
static int decode(const float ll174[], int a174[], FT8Params& params, int use_osd, std::string &comment);
|
||||
// encode a 77 bit message into a 174 bit payload
|
||||
// adds the 14 bit CRC to obtain 91 bits
|
||||
// apply (174, 91) generator mastrix to obtain the 83 parity bits
|
||||
// append the 83 bits to the 91 bits messag e+ crc to obbain the 174 bit payload
|
||||
// append the 83 bits to the 91 bits message e+ crc to obtain the 174 bit payload
|
||||
static void encode(int a174[], int s77[]);
|
||||
|
||||
//
|
||||
@ -490,7 +491,7 @@ private:
|
||||
// scaled by str.
|
||||
//
|
||||
std::vector<float> extract_bits(const std::vector<int> &syms, const std::vector<float> str);
|
||||
// decode successive pairs of symbols. exploits the likelyhood
|
||||
// decode successive pairs of symbols. exploits the likelihood
|
||||
// that they have the same phase, by summing the complex
|
||||
// correlations for each possible pair and using the max.
|
||||
void soft_decode_pairs(
|
||||
|
@ -370,9 +370,9 @@ void LDPC::ft8_crc(int msg1[], int msglen, int out[14])
|
||||
// the new FT8 polynomial for 14-bit CRC, 0x2757,
|
||||
// with leading 1 bit.
|
||||
int div[] = {1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1};
|
||||
|
||||
// append 14 zeros.
|
||||
int *msg = (int *)malloc(sizeof(int) * (msglen + 14));
|
||||
|
||||
for (int i = 0; i < msglen + 14; i++)
|
||||
{
|
||||
if (i < msglen)
|
||||
@ -396,7 +396,7 @@ void LDPC::ft8_crc(int msg1[], int msglen, int out[14])
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < 14; i++)
|
||||
for (int i = 0; i < msglen + 14; i++)
|
||||
{
|
||||
out[i] = msg[msglen + i];
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ public:
|
||||
static int osd_decode(float codeword[174], int depth, int out[91], int *out_depth);
|
||||
};
|
||||
|
||||
} // namepsace FT8
|
||||
} // namespace FT8
|
||||
|
||||
#endif // osd_h
|
||||
|
||||
|
@ -82,7 +82,7 @@ std::string Packing::unpackcall(int x)
|
||||
|
||||
if (x <= 1002)
|
||||
{
|
||||
sprintf(tmp, "CQ %d", x - 3);
|
||||
snprintf(tmp, sizeof(tmp), "CQ %d", x - 3);
|
||||
return std::string(tmp);
|
||||
}
|
||||
|
||||
@ -96,7 +96,7 @@ std::string Packing::unpackcall(int x)
|
||||
int ci3 = x / 27;
|
||||
x %= 27;
|
||||
int ci4 = x;
|
||||
sprintf(tmp, "CQ %c%c%c%c", c4[ci1], c4[ci2], c4[ci3], c4[ci4]);
|
||||
snprintf(tmp, sizeof(tmp), "CQ %c%c%c%c", c4[ci1], c4[ci2], c4[ci3], c4[ci4]);
|
||||
return std::string(tmp);
|
||||
}
|
||||
|
||||
@ -193,9 +193,9 @@ std::string Packing::unpackgrid15(int ng, int ir)
|
||||
char tmp[16];
|
||||
|
||||
if (db >= 0) {
|
||||
sprintf(tmp, "%s+%02d", ir ? "R" : "", db);
|
||||
snprintf(tmp, sizeof(tmp), "%s+%02d", ir ? "R" : "", db);
|
||||
} else {
|
||||
sprintf(tmp, "%s-%02d", ir ? "R" : "", 0 - db);
|
||||
snprintf(tmp, sizeof(tmp), "%s-%02d", ir ? "R" : "", 0 - db);
|
||||
}
|
||||
|
||||
return std::string(tmp);
|
||||
@ -388,7 +388,7 @@ std::string Packing::unpack_5(int a77[], std::string& call1str, std::string& cal
|
||||
hashes_mu.unlock();
|
||||
call2str = std::string(ocall);
|
||||
|
||||
// mext bit is alway for R
|
||||
// mext bit is always for R
|
||||
int i = 12+ 22 +1;
|
||||
// r3
|
||||
int rst = un64(a77, i, 3);
|
||||
@ -396,7 +396,7 @@ std::string Packing::unpack_5(int a77[], std::string& call1str, std::string& cal
|
||||
i += 3;
|
||||
int qsonb = un64(a77, i, 11);
|
||||
char report[16];
|
||||
sprintf(report, "%d%04d", rst, qsonb);
|
||||
snprintf(report, sizeof(report), "%d%04d", rst, qsonb);
|
||||
i += 11;
|
||||
// g25
|
||||
int ng = un64(a77, i, 25);
|
||||
@ -467,9 +467,9 @@ std::string Packing::unpack_0_1(int a77[], std::string& call1str, std::string& c
|
||||
char tmp[32];
|
||||
|
||||
if (r >= 0) {
|
||||
sprintf(tmp, "+%02d", r);
|
||||
snprintf(tmp, sizeof(tmp), "+%02d", r);
|
||||
} else {
|
||||
sprintf(tmp, "-%02d", -r);
|
||||
snprintf(tmp, sizeof(tmp), "-%02d", -r);
|
||||
}
|
||||
|
||||
locstr = std::string(tmp);
|
||||
@ -553,7 +553,7 @@ std::string Packing::unpack_3(int a77[], std::string& call1str, std::string& cal
|
||||
else
|
||||
{
|
||||
char tmp[32];
|
||||
sprintf(tmp, "%04d", serial);
|
||||
snprintf(tmp, sizeof(tmp), "%04d", serial);
|
||||
serialstr = std::string(tmp);
|
||||
}
|
||||
|
||||
@ -571,7 +571,7 @@ std::string Packing::unpack_3(int a77[], std::string& call1str, std::string& cal
|
||||
}
|
||||
{
|
||||
char tmp[16];
|
||||
sprintf(tmp, "%d ", rst);
|
||||
snprintf(tmp, sizeof(tmp), "%d ", rst);
|
||||
msg += std::string(tmp);
|
||||
}
|
||||
|
||||
@ -634,7 +634,7 @@ std::string Packing::unpack_0_3(int a77[], int n3, std::string& call1str, std::s
|
||||
|
||||
{
|
||||
char tmp[16];
|
||||
sprintf(tmp, "%d%c ", n_transmitters + 1, clss + 'A');
|
||||
snprintf(tmp, sizeof(tmp), "%d%c ", n_transmitters + 1, clss + 'A');
|
||||
msg += std::string(tmp);
|
||||
}
|
||||
|
||||
@ -658,9 +658,9 @@ std::string Packing::unpack(int a77[], std::string& call1, std::string& call2, s
|
||||
char tmp[64];
|
||||
|
||||
if (i3 == 0) {
|
||||
sprintf(tmp, "%d.%d", i3, n3);
|
||||
snprintf(tmp, sizeof(tmp), "%d.%d", i3, n3);
|
||||
} else {
|
||||
sprintf(tmp, "%d", i3);
|
||||
snprintf(tmp, sizeof(tmp), "%d", i3);
|
||||
}
|
||||
|
||||
type = std::string(tmp);
|
||||
@ -714,7 +714,7 @@ std::string Packing::unpack(int a77[], std::string& call1, std::string& call2, s
|
||||
}
|
||||
|
||||
call1 = "UNK";
|
||||
sprintf(tmp, "UNK i3=%d n3=%d", i3, n3);
|
||||
snprintf(tmp, sizeof(tmp), "UNK i3=%d n3=%d", i3, n3);
|
||||
return std::string(tmp);
|
||||
}
|
||||
|
||||
|
@ -1,2 +1,9 @@
|
||||
#!/bin/sh
|
||||
git diff --name-only ${1}..${2} | grep plugins/ | cut -d'/' -f2,3 | sort -u
|
||||
BASEDIR=$(dirname $0)
|
||||
PLUGINS=$(git diff --name-only ${1}..${2} | grep plugins/ | cut -d'/' -f2,3 | sort -u)
|
||||
for plugin in $PLUGINS
|
||||
do
|
||||
FILE=$(find $BASEDIR/plugins/$plugin -name "*plugin.cpp")
|
||||
echo $FILE
|
||||
sed -i -E "s/QStringLiteral\(\"7\.(.*)\"\)/QStringLiteral\(\"7\.22\.7\"\)/" $FILE
|
||||
done
|
||||
|
@ -35,7 +35,7 @@ include_directories(
|
||||
${CMAKE_SOURCE_DIR}/exports
|
||||
)
|
||||
|
||||
add_library(httpserver SHARED
|
||||
add_library(httpserver
|
||||
${httpserver_SOURCES}
|
||||
)
|
||||
|
||||
|
@ -249,7 +249,7 @@ void HttpConnectionHandler::read()
|
||||
}
|
||||
|
||||
// In case of HTTP 1.0 protocol add the Connection:close header.
|
||||
// This ensures that the HttpResponse does not activate chunked mode, which is not spported by HTTP 1.0.
|
||||
// This ensures that the HttpResponse does not activate chunked mode, which is not supported by HTTP 1.0.
|
||||
else
|
||||
{
|
||||
bool http1_0=QString::compare(currentRequest->getVersion(),"HTTP/1.0",Qt::CaseInsensitive)==0;
|
||||
|
@ -94,7 +94,7 @@ void HttpConnectionHandlerPool::cleanup()
|
||||
if (++idleCounter > maxIdleHandlers)
|
||||
{
|
||||
pool.removeOne(handler);
|
||||
qDebug("HttpConnectionHandlerPool: Removed connection handler (%p), pool size is now %i",handler,pool.size());
|
||||
qDebug("HttpConnectionHandlerPool: Removed connection handler (%p), pool size is now %i",handler,(int)pool.size());
|
||||
delete handler;
|
||||
break; // remove only one handler in each interval
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ HttpListener::HttpListener(QSettings* settings, HttpRequestHandler* requestHandl
|
||||
pool = 0;
|
||||
this->settings = settings;
|
||||
this->requestHandler = requestHandler;
|
||||
// Reqister type of socketDescriptor for signal/slot handling
|
||||
// Register type of socketDescriptor for signal/slot handling
|
||||
qRegisterMetaType<tSocketDescriptor>("tSocketDescriptor");
|
||||
// Start listening
|
||||
listen();
|
||||
@ -33,7 +33,7 @@ HttpListener::HttpListener(const HttpListenerSettings& settings, HttpRequestHand
|
||||
this->settings = 0;
|
||||
listenerSettings = settings;
|
||||
this->requestHandler = requestHandler;
|
||||
// Reqister type of socketDescriptor for signal/slot handling
|
||||
// Register type of socketDescriptor for signal/slot handling
|
||||
qRegisterMetaType<tSocketDescriptor>("tSocketDescriptor");
|
||||
// Start listening
|
||||
listen();
|
||||
|
@ -73,7 +73,7 @@ public:
|
||||
virtual ~HttpListener();
|
||||
|
||||
/**
|
||||
Restart listeing after close().
|
||||
Restart listening after close().
|
||||
*/
|
||||
void listen();
|
||||
|
||||
@ -108,7 +108,7 @@ private:
|
||||
/** Configuration settings for the HTTP server as a structure */
|
||||
HttpListenerSettings listenerSettings;
|
||||
|
||||
/** Point to the reuqest handler which processes all HTTP requests */
|
||||
/** Point to the request handler which processes all HTTP requests */
|
||||
HttpRequestHandler* requestHandler;
|
||||
|
||||
/** Pool of connection handlers */
|
||||
|
@ -425,7 +425,7 @@ void HttpRequest::parseMultiPartFile()
|
||||
while (!tempFile->atEnd() && !finished && !tempFile->error())
|
||||
{
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpRequest::parseMultiPartFile: reading multpart headers");
|
||||
qDebug("HttpRequest::parseMultiPartFile: reading multipart headers");
|
||||
#endif
|
||||
QByteArray fieldName;
|
||||
QByteArray fileName;
|
||||
@ -464,7 +464,7 @@ void HttpRequest::parseMultiPartFile()
|
||||
}
|
||||
|
||||
#ifdef SUPERVERBOSE
|
||||
qDebug("HttpRequest::parseMultiPartFile: reading multpart data");
|
||||
qDebug("HttpRequest::parseMultiPartFile: reading multipart data");
|
||||
#endif
|
||||
QTemporaryFile* uploadedFile=0;
|
||||
QByteArray fieldValue;
|
||||
|
@ -26,7 +26,7 @@ namespace qtwebapp {
|
||||
from a TCP socket and provides getters for the individual parts
|
||||
of the request.
|
||||
<p>
|
||||
The follwing config settings are required:
|
||||
The following config settings are required:
|
||||
<code><pre>
|
||||
maxRequestSize=16000
|
||||
maxMultiPartSize=1000000
|
||||
@ -73,7 +73,7 @@ public:
|
||||
void readFromSocket(QTcpSocket* socket);
|
||||
|
||||
/**
|
||||
Get the status of this reqeust.
|
||||
Get the status of this request.
|
||||
@see RequestStatus
|
||||
*/
|
||||
RequestStatus getStatus() const;
|
||||
|
@ -35,7 +35,7 @@ StaticFileController::StaticFileController(QSettings* settings, QObject* parent)
|
||||
maxCachedFileSize=settings->value("maxCachedFileSize","65536").toInt();
|
||||
cache.setMaxCost(settings->value("cacheSize","1000000").toInt());
|
||||
cacheTimeout=settings->value("cacheTime","60000").toInt();
|
||||
qDebug("StaticFileController: cache timeout=%i, size=%i",cacheTimeout,cache.maxCost());
|
||||
qDebug("StaticFileController: cache timeout=%i, size=%i",cacheTimeout,(int)cache.maxCost());
|
||||
}
|
||||
|
||||
StaticFileController::StaticFileController(const HttpDocrootSettings& settings, QObject* parent)
|
||||
@ -56,7 +56,7 @@ StaticFileController::StaticFileController(const HttpDocrootSettings& settings,
|
||||
maxCachedFileSize=settings.maxCachedFileSize;
|
||||
cache.setMaxCost(settings.cacheSize);
|
||||
cacheTimeout=settings.cacheTime;
|
||||
qDebug("StaticFileController: cache timeout=%i, size=%i",cacheTimeout,cache.maxCost());
|
||||
qDebug("StaticFileController: cache timeout=%i, size=%i",cacheTimeout,(int)cache.maxCost());
|
||||
}
|
||||
|
||||
void StaticFileController::service(HttpRequest& request, HttpResponse& response)
|
||||
|
@ -21,7 +21,7 @@ include_directories(
|
||||
${CMAKE_SOURCE_DIR}/exports
|
||||
)
|
||||
|
||||
add_library(logging SHARED
|
||||
add_library(logging
|
||||
${logging_SOURCES}
|
||||
)
|
||||
|
||||
|
@ -48,7 +48,7 @@ namespace qtwebapp {
|
||||
|
||||
@see set() describes how to set logger variables
|
||||
@see LogMessage for a description of the message decoration.
|
||||
@see Logger for a descrition of the buffer.
|
||||
@see Logger for a description of the buffer.
|
||||
*/
|
||||
|
||||
class LOGGING_API FileLogger : public Logger {
|
||||
|