Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
498 commits
Select commit Hold shift + click to select a range
343f071
WebsocketServerTest unit tests added
SanttuRantanen Aug 29, 2024
69702be
work in progress
ptesavol Aug 30, 2024
e433ffb
always wait for onConnected callback, no matter is the socket already…
ptesavol Aug 30, 2024
9e21edc
Merge branch 'testing-and-fixing-websockets' into implement-websocket…
ptesavol Aug 30, 2024
e7ec87f
Create action_ios.yml
SanttuRantanen Aug 31, 2024
e687bc7
Delete .github/workflows/reusable/cached-install/action_ios.yml
SanttuRantanen Aug 31, 2024
a662595
connectionamanager implemented
ptesavol Sep 5, 2024
43b6b38
move to using templated CallContextType and move-by-value in RpcCommu…
ptesavol Sep 8, 2024
ec5fa08
moved timout out of the callcontext
ptesavol Sep 8, 2024
a7d701d
First ConnectionManager test passes
ptesavol Sep 9, 2024
5ec00de
add EnableSharedFromThis and fix linting errors
ptesavol Sep 10, 2024
faeb21a
add setting homebrew prefix in install and setenv scripts
ptesavol Sep 10, 2024
e7c9b4d
add boost-endian dependency to streamr-utils
ptesavol Sep 11, 2024
feb7912
add waitforcondition(), improve naming
ptesavol Sep 11, 2024
505d13e
fix linting
ptesavol Sep 11, 2024
edb5cb7
potos of trackerless-network get built
ptesavol Sep 11, 2024
f25f565
waitForEvent and poller.start synchronized
SanttuRantanen Sep 11, 2024
8f43450
waitForCondition unit tests added
SanttuRantanen Sep 11, 2024
b2e3fa3
waitForCondition unit tests added
SanttuRantanen Sep 11, 2024
7f65403
developining..
ptesavol Sep 12, 2024
8e80b3b
waitForCondition unit tests added
SanttuRantanen Sep 12, 2024
fd7c992
add ReplayEventEmitter that replays the latest event to new subscribers
ptesavol Sep 12, 2024
40b6519
merged
ptesavol Sep 12, 2024
9963660
Merge branch 'implement-connection-manager' into implement-proxy-client
ptesavol Sep 12, 2024
9625fa9
Integration tests added
SanttuRantanen Sep 12, 2024
fa47177
Websocket callbacks synchronized with mutexes
SanttuRantanen Sep 13, 2024
1020a08
end-to-end test of ProxyClient compiles but does not work yet
ptesavol Sep 13, 2024
1cfc124
Merge branch 'implement-connection-manager' into implement-proxy-client
ptesavol Sep 13, 2024
a4819c3
submodule updated
ptesavol Sep 13, 2024
6da0e4d
fix outgoinghandshaker to save a copy of the targetpeerdescriptor
ptesavol Sep 13, 2024
271a510
generate real random uuids, end-to end broadcast to ts goes through
ptesavol Sep 13, 2024
e5f3696
use real random uuid
ptesavol Sep 13, 2024
6aea0b8
add utils for testing, split linting in parts
ptesavol Sep 16, 2024
7f41e45
add errorCallback to send() of CommunicationManager
ptesavol Sep 18, 2024
ff4bf14
work-in-progress
ptesavol Sep 23, 2024
43fc57e
split Endpoint to separate files, granularize mutex locking
ptesavol Sep 25, 2024
88d0881
upgrade vcpkg to latest version
ptesavol Sep 25, 2024
78f760b
end-to-end publishing test from libstreamrproxyclient shared library …
ptesavol Sep 25, 2024
1d05009
fix linting
ptesavol Sep 26, 2024
f9297a8
update submodule
ptesavol Sep 26, 2024
742fb53
remove submodule
ptesavol Sep 26, 2024
9cbfccb
re-add submodule using https
ptesavol Sep 26, 2024
ecae8c3
change filename case in git
ptesavol Sep 26, 2024
6b26fef
filename change case in include
ptesavol Sep 26, 2024
0e1e007
change case to LibDataChannel
ptesavol Sep 26, 2024
75a84d5
change include case
ptesavol Sep 26, 2024
12024a7
change include case
ptesavol Sep 26, 2024
4d0dd69
change to ubuntu-24.04 runner
ptesavol Sep 26, 2024
1b63b0e
change to noble apt repo
ptesavol Sep 26, 2024
85c498c
use gcc14 in github actions
ptesavol Sep 27, 2024
f963faa
fix case to LibDataChannel
ptesavol Sep 27, 2024
f08f2e4
fix case
ptesavol Sep 27, 2024
8a3d9b2
improve github caching
ptesavol Sep 27, 2024
2922f68
include runner.arch in cache names
ptesavol Sep 27, 2024
b6be445
include runner.arch in cache names
ptesavol Sep 27, 2024
ebea1f4
remove experimental from folly include statements
ptesavol Sep 27, 2024
701d11c
remove unused includes
ptesavol Sep 27, 2024
1245164
remove unused includes
ptesavol Sep 27, 2024
410a3e4
re-introduce experimental
ptesavol Sep 27, 2024
ba804d5
re-introduce experimental universally to all folly include statements
ptesavol Sep 27, 2024
53c46f0
re-introduce experimental universally to all folly include statements
ptesavol Sep 27, 2024
a9e4908
test also for gnuc in macro definition
ptesavol Sep 27, 2024
1cd3671
remove size_t from c header file
ptesavol Sep 27, 2024
31d8286
add fPIC flag
ptesavol Sep 27, 2024
0e0e7cf
set initial value for aborted to false in abortsignal
ptesavol Sep 28, 2024
bb0b58b
use custom main in utils tests
ptesavol Sep 28, 2024
a9bf480
use initializer list when creating json
ptesavol Sep 28, 2024
b41b23a
use custom test main in dht
ptesavol Sep 28, 2024
1fc13c0
change size_t argument to uint64_t in shared library
ptesavol Sep 30, 2024
d5ee0b2
try fixing event after detroy in websocket
ptesavol Sep 30, 2024
a42a685
tests pass on linux
ptesavol Oct 1, 2024
52a462e
fix linting
ptesavol Oct 2, 2024
27727c1
fix linting
ptesavol Oct 2, 2024
80d0593
fix linting
ptesavol Oct 2, 2024
704bbc4
add placeholder unit tests to fix linting
ptesavol Oct 2, 2024
2d07318
add more placeholder unit tests
ptesavol Oct 2, 2024
05c8598
remove cpptrace, add monorepo deps to libstreamrproxyclient
ptesavol Oct 2, 2024
eb96790
remove cpptrace to enable android builds
ptesavol Oct 2, 2024
c2a3e53
copy ios-aware homebrewClang.cmake to all directories
ptesavol Oct 2, 2024
067824b
add more checks to ensure that setenvs.sh has been run
ptesavol Oct 2, 2024
391d728
change case of utils.hpp
ptesavol Oct 2, 2024
8f68a5c
try fixing linting errors on linux
ptesavol Oct 2, 2024
b0ad1dd
try fixing linting errors on linux
ptesavol Oct 2, 2024
65b00c1
try fixing linting errors on linux
ptesavol Oct 2, 2024
761d2b0
move to cland-18 on linux
ptesavol Oct 2, 2024
0e1566e
move to cland-18 on linux
ptesavol Oct 2, 2024
d67d25b
add missing include statements to fix linting
ptesavol Oct 2, 2024
dd29436
add missing include statements to fix linting
ptesavol Oct 2, 2024
9f6446b
linting
ptesavol Oct 2, 2024
8dd36f0
linting
ptesavol Oct 2, 2024
777601a
linting
ptesavol Oct 2, 2024
892bed4
linting
ptesavol Oct 2, 2024
e8fccd5
linting
ptesavol Oct 2, 2024
7ec8789
force using clangd18 on linux
ptesavol Oct 2, 2024
4a1cfee
force using clangd18 on linux
ptesavol Oct 2, 2024
bdd973f
force using clangd19 on linux
ptesavol Oct 2, 2024
b068211
force using clangd19 on linux
ptesavol Oct 2, 2024
4ee7b9d
add placeholder unit tests
ptesavol Oct 3, 2024
746fdd4
try fixing linting errors on linux
ptesavol Oct 3, 2024
c60c272
try fixing linting errors on linux
ptesavol Oct 3, 2024
e1e0f2f
try fixing linting errors on linux
ptesavol Oct 3, 2024
df5175c
linting
ptesavol Oct 3, 2024
ccbbba0
linting
ptesavol Oct 3, 2024
d9044c7
sending multiple messages works
ptesavol Oct 4, 2024
f2618b8
iOS xcframework and iOS LocationShare App (With static lib) added
SanttuRantanen Oct 5, 2024
5b7fa34
Added mode *.o files to the static lib
SanttuRantanen Oct 5, 2024
01360e4
Added one header file to the static lib
SanttuRantanen Oct 5, 2024
86b0442
Android App added
SanttuRantanen Oct 5, 2024
f522f0e
Workaround removed from the Android app
SanttuRantanen Oct 5, 2024
8dccf05
Readme added to ios install
SanttuRantanen Oct 5, 2024
a28e3ca
Readme added to android install
SanttuRantanen Oct 5, 2024
93ad856
iOS unit test app added
SanttuRantanen Oct 5, 2024
f0a11bc
Compiler flags added
SanttuRantanen Oct 5, 2024
9969f7a
README update
SanttuRantanen Oct 5, 2024
f1c310a
Dht unit tests added. Also IPendingConnection abstract class added in…
SanttuRantanen Oct 5, 2024
9843da3
Unit tests added to iOS Unit Tester
SanttuRantanen Oct 6, 2024
61be4dd
Unit tests added to iOS Unit Tester
SanttuRantanen Oct 6, 2024
864fd86
Unit tests added to CMakeLists.txt
SanttuRantanen Oct 6, 2024
3ed2d4f
Unit test removed from CMakeLists.txt
SanttuRantanen Oct 6, 2024
e71566d
Unit test cleaned
SanttuRantanen Oct 6, 2024
07433ff
convert streamrproxyclient.h to pure C
ptesavol Oct 6, 2024
7a9c4fb
Fixed linting for DHT
SanttuRantanen Oct 7, 2024
a59ce08
Fixed linting for DHT
SanttuRantanen Oct 7, 2024
08ee193
3 flaky tests disabled
SanttuRantanen Oct 7, 2024
3f7b9d4
Unit tests fixed
SanttuRantanen Oct 7, 2024
be486be
2 unit tests commented out. These must be checked later
SanttuRantanen Oct 7, 2024
02117c1
Null check added and test disabled as flaky one
SanttuRantanen Oct 7, 2024
f516839
generate shared library distribusions automatically
ptesavol Oct 7, 2024
2da27ff
also pack ios distribution to tgz
ptesavol Oct 7, 2024
0236ad6
shared binary for arm64-osx
ptesavol Oct 7, 2024
b1c208a
x64-osx build
juslesan Oct 7, 2024
3be1e5a
add duration cast trying to fix a linux bug
ptesavol Oct 8, 2024
aad7838
Merge branch 'module3' of github.com:streamr-dev/native-sdk into module3
ptesavol Oct 8, 2024
a80ff8d
added lfs
ptesavol Oct 8, 2024
82bf390
increase logging
ptesavol Oct 8, 2024
34362f8
linux binaries
ptesavol Oct 8, 2024
2a44c64
temporary commit
ptesavol Oct 8, 2024
c889dff
rename utils.hpp to Utils.hpp
ptesavol Oct 8, 2024
8234b5a
add readme to libstreamrproxyclient
ptesavol Oct 8, 2024
9a8fc39
merged with module3
ptesavol Oct 8, 2024
6670c12
update native-ts-integration submodule
ptesavol Oct 8, 2024
a23d958
update readme
ptesavol Oct 8, 2024
90e16b0
add readme to the unix example
ptesavol Oct 8, 2024
0bb52cb
update readmes
ptesavol Oct 8, 2024
cea03c1
Android App simplified (#18)
SanttuRantanen Oct 10, 2024
0324897
changed binaries
ptesavol Oct 10, 2024
28fc771
add signing utils
ptesavol Oct 21, 2024
b236e44
add binary utils
ptesavol Oct 21, 2024
0558e48
signing added to unix example
ptesavol Oct 21, 2024
e30d4c2
Signing added to Android LocationShare example app
SanttuRantanen Oct 21, 2024
e196343
Signing added to iOS LocationShare example app
SanttuRantanen Oct 21, 2024
e9cf5f8
Stream part Id changed
SanttuRantanen Oct 21, 2024
1083d4d
Stream part ID changed
SanttuRantanen Oct 21, 2024
2559410
add go and python examples
ptesavol Oct 24, 2024
5638e0d
add initial cpp wrapper file
ptesavol Oct 31, 2024
5c4bfa2
new c api compiles, tests fail
ptesavol Nov 6, 2024
d6ff738
define copy, move and assignmet for ProxyResults and related classes
ptesavol Nov 6, 2024
1962124
libstreamrproxyclient tests pass with the new C API
ptesavol Nov 6, 2024
887f16d
add python wrapper and fixes to the shared library
ptesavol Nov 8, 2024
abbf656
python wrapper works
ptesavol Nov 18, 2024
cc6f242
go wrapper works
ptesavol Nov 18, 2024
d325c0a
Module3 (#13)
ptesavol Nov 20, 2024
1160711
merge with main
ptesavol Nov 21, 2024
9b3f97e
fix lint
ptesavol Nov 21, 2024
4e6a205
lint fix
ptesavol Nov 21, 2024
a7f6849
lint fixes
ptesavol Nov 21, 2024
5afc827
try autogenerating and auto-committing binaries
ptesavol Nov 22, 2024
ce1534d
fix bug in workflow
ptesavol Nov 22, 2024
7b45315
removed dist to fix lfs
ptesavol Nov 22, 2024
625167b
add cmake install to libstreamrproxyclient
ptesavol Nov 22, 2024
b296eda
delete dist
ptesavol Nov 22, 2024
7597b8b
remove go dist from gitignore
ptesavol Nov 22, 2024
ac359ee
remove go dist from gitignore
ptesavol Nov 22, 2024
7d15daf
try fixing detached head in CI action push
ptesavol Nov 22, 2024
db38a40
try get lfs to work in ci
ptesavol Nov 22, 2024
038910d
lfs push
ptesavol Nov 22, 2024
8ce6075
lfs push
ptesavol Nov 22, 2024
f6e4a55
...
ptesavol Nov 22, 2024
e98ba1d
.
ptesavol Nov 22, 2024
5e347f5
allow incomplete push
ptesavol Nov 22, 2024
26dd63d
add README.md
ptesavol May 31, 2024
433a029
linux binaries
ptesavol Oct 8, 2024
7bf73fa
Module3 (#13)
ptesavol Nov 20, 2024
d9d5ede
add missing lfs files
ptesavol Nov 22, 2024
78cdb55
remove lfs from actions
ptesavol Nov 23, 2024
e955da4
remove lfs files
ptesavol Nov 23, 2024
188562c
rm
ptesavol Nov 23, 2024
398533e
Merge branch 'main' into gowrapper
ptesavol Nov 24, 2024
8583ae8
Update action.yml
ptesavol Nov 24, 2024
8f7e994
fix formatting
ptesavol Nov 24, 2024
c37e787
remove gitattributes
ptesavol Nov 25, 2024
9d90a37
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
c1517ba
try running ci on macos
ptesavol Nov 25, 2024
1c5730b
try ignoring xcode install failure
ptesavol Nov 25, 2024
b00271d
try ignoring llvm install failure
ptesavol Nov 25, 2024
cc733bc
try ignoring more install failures
ptesavol Nov 25, 2024
040c557
try different macos versions
ptesavol Nov 25, 2024
7b6d866
exclude PluginCodeGenerator.hpp from linting
ptesavol Nov 25, 2024
7155660
add arm-64 linux runner to matrix
ptesavol Nov 25, 2024
edaf993
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
8d86d18
pull before push in git scripts
ptesavol Nov 25, 2024
e4d9bcf
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
5822921
change git command to rebase
ptesavol Nov 25, 2024
122be6b
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
9c7f46e
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
af19820
fix tests
ptesavol Nov 25, 2024
0616ca2
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
e05d9d9
Automatically compiled binaries
github-actions[bot] Nov 25, 2024
e610acb
debug tests on mac runner
ptesavol Nov 26, 2024
e2c01f6
cat libdatachannel build log on build failure
ptesavol Nov 26, 2024
5d0733a
Automatically compiled binaries
github-actions[bot] Nov 26, 2024
1fd1667
use unique ports in tests
ptesavol Nov 26, 2024
68fe51d
Automatically compiled binaries
github-actions[bot] Nov 26, 2024
c5fb9bf
enable all 4 matrix builds
ptesavol Nov 26, 2024
704a8c1
Automatically compiled binaries
github-actions[bot] Nov 26, 2024
619e438
fix tests
ptesavol Nov 27, 2024
8a38eb2
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
c507613
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
ebc3525
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
bb349bb
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
1f4fe8f
increase test timeout
ptesavol Nov 27, 2024
e26eb0d
restart all jobs
ptesavol Nov 27, 2024
2d35ea9
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
9ff2ad1
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
73cbc7b
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
d04e423
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
9d205db
Automatically compiled binaries
github-actions[bot] Nov 27, 2024
94e6b0a
add go example
ptesavol Dec 2, 2024
b077ecf
remove gowrapper, make it a submodule later
ptesavol Dec 11, 2024
2df80af
add gowrapper as submodule
ptesavol Dec 11, 2024
b5c87df
prepare for merge
ptesavol Dec 11, 2024
d885d12
improve go example
ptesavol Dec 11, 2024
9d3f50c
add script for creating python package, add readme to go and python w…
ptesavol Dec 12, 2024
1609c65
add c++ wrapper
ptesavol Dec 13, 2024
1263ddf
lint
ptesavol Dec 13, 2024
52aaae6
fix folly to work with latest android studio
ptesavol Dec 14, 2024
b455c46
merge with main
ptesavol Dec 19, 2024
07eecf8
fix remainin conflicts
ptesavol Dec 19, 2024
becde5e
try python publishing in CI
ptesavol Dec 19, 2024
7d3c111
add submodule support to CI
ptesavol Dec 19, 2024
c32fbf8
try fixing folly
ptesavol Dec 19, 2024
c654292
re-run jobs
ptesavol Dec 19, 2024
010cd06
patch libdatachannel
ptesavol Dec 19, 2024
cd7b845
set c compiler envs
ptesavol Dec 19, 2024
5ac7598
try using file copy
ptesavol Dec 19, 2024
1800238
try using file copy and rename
ptesavol Dec 19, 2024
99a06cf
remove unnecessary env vars from install.sh
ptesavol Dec 19, 2024
193d29d
do not push binaries to repo
ptesavol Dec 19, 2024
9b82c0a
remove second cpp wrapper
ptesavol Dec 19, 2024
40cb1a5
fix createpythonpackage
ptesavol Dec 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/workflows/reusable/cached-install/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,14 @@ runs:
key: ${{ runner.arch }}-${{ runner.os }}-cache-vcpkg-installed1-${{ hashFiles('./vcpkg.json') }}
path: |
./build/vcpkg_installed
#- name: Commit compiled binaries
# run: |
# git config --global user.name 'github-actions[bot]'
# git config --global user.email 'github-actions[bot]@users.noreply.github.com'
# git add packages/streamr-libstreamrproxyclient/dist
# git add packages/streamr-libstreamrproxyclient/wrappers/go
# git commit -m "Automatically compiled binaries"
# git pull --rebase --no-edit
# git push --no-verify
# shell: bash

2 changes: 2 additions & 0 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ jobs:
with:
ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0
submodules: true
token: ${{ secrets.GITHUB_TOKEN }}
- name: install
uses: ./.github/workflows/reusable/cached-install
- name: lint
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,6 @@
[submodule "packages/streamr-trackerless-network/test/integration/ts-integration"]
path = packages/streamr-trackerless-network/test/integration/ts-integration
url = https://github.com/streamr-dev/native-ts-integration.git
[submodule "packages/streamr-libstreamrproxyclient/wrappers/go"]
path = packages/streamr-libstreamrproxyclient/wrappers/go
url = git@github.com:streamr-dev/goproxyclient.git
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,4 @@ message(STATUS "Root project VCPKG_TARGET_TRIPLET: ${VCPKG_TARGET_TRIPLET}")
foreach(package ${MonorepoPackages})
add_subdirectory(packages/${package})
endforeach()

13 changes: 13 additions & 0 deletions overlayports/folly/fix-cursor.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/folly/io/Cursor.h b/folly/io/Cursor.h
index 7a0abc9..710ba3e 100644
--- a/folly/io/Cursor.h
+++ b/folly/io/Cursor.h
@@ -683,7 +683,7 @@ class CursorBase {
*
* @methodset Accessors
*/
- std::basic_string_view<uint8_t> peekView() {
+ std::basic_string_view<char> peekView() {
auto bytes = peekBytes();
return {bytes.data(), bytes.size()};
}
13 changes: 13 additions & 0 deletions overlayports/folly/fix-range.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/folly/Range.h b/folly/Range.h
index 42cd92d69..d87914a99 100644
--- a/folly/Range.h
+++ b/folly/Range.h
@@ -638,7 +638,7 @@ class Range {
template <typename ValueType>
struct StringViewType //
: std::conditional<
- std::is_trivial<ValueType>::value,
+ detail::range_is_char_type_v_<Iter>,
std::basic_string_view<ValueType>,
NotStringView> {};

2 changes: 2 additions & 0 deletions overlayports/folly/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ vcpkg_from_github(
disable-groupvarint.patch
disable-cxa-init-primary-exception.patch
fix-android-remainder.patch
fix-range.patch
fix-cursor.patch
)

file(REMOVE "${SOURCE_PATH}/CMake/FindFmt.cmake")
Expand Down
63 changes: 63 additions & 0 deletions overlayports/libdatachannel/dependencies.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8a61757..b35e4b1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -234,7 +234,7 @@ set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads REQUIRED)

if(USE_SYSTEM_PLOG)
- find_package(plog REQUIRED)
+ find_package(plog CONFIG REQUIRED)
else()
set(CMAKE_POLICY_DEFAULT_CMP0048 NEW)
add_subdirectory(deps/plog EXCLUDE_FROM_ALL)
@@ -245,7 +245,8 @@ if(SCTP_DEBUG)
endif()

if(USE_SYSTEM_USRSCTP)
- find_package(Usrsctp REQUIRED)
+ find_package(unofficial-usrsctp CONFIG REQUIRED)
+ add_library(Usrsctp::Usrsctp ALIAS unofficial::usrsctp::usrsctp)
else()
option(sctp_build_shared_lib OFF)
option(sctp_build_programs OFF)
@@ -331,7 +332,7 @@ else()
target_compile_definitions(datachannel PUBLIC RTC_ENABLE_MEDIA=1)
target_compile_definitions(datachannel-static PUBLIC RTC_ENABLE_MEDIA=1)
if(USE_SYSTEM_SRTP)
- find_package(libSRTP REQUIRED)
+ find_package(libSRTP CONFIG REQUIRED)
if(NOT TARGET libSRTP::srtp2)
add_library(libSRTP::srtp2 UNKNOWN IMPORTED)
set_target_properties(libSRTP::srtp2 PROPERTIES
@@ -475,8 +476,9 @@ install(
)

# Export config
+configure_file(cmake/LibDataChannelConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/cmake/LibDataChannelConfig.cmake @ONLY)
install(
- FILES ${CMAKE_CURRENT_SOURCE_DIR}/cmake/LibDataChannelConfig.cmake
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/cmake/LibDataChannelConfig.cmake
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/LibDataChannel
)

diff --git a/cmake/LibDataChannelConfig.cmake b/cmake/LibDataChannelConfig.cmake
index cb2b884..d0b77ca 100644
--- a/cmake/LibDataChannelConfig.cmake
+++ b/cmake/LibDataChannelConfig.cmake
@@ -1,2 +1,15 @@
+if(NOT "@BUILD_SHARED_LIBS@")
+ include(CMakeFindDependencyMacro)
+ set(THREADS_PREFER_PTHREAD_FLAG ON)
+ find_dependency(Threads)
+ find_dependency(plog CONFIG)
+ find_dependency(unofficial-usrsctp CONFIG)
+ if(NOT "@NO_MEDIA@")
+ find_dependency(libSRTP CONFIG)
+ endif()
+ find_dependency(OpenSSL)
+ find_dependency(LibJuice)
+endif()
+
include("${CMAKE_CURRENT_LIST_DIR}/LibDataChannelTargets.cmake")

28 changes: 28 additions & 0 deletions overlayports/libdatachannel/fix-cmakelists.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 38e069e..0ada768 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -260,10 +260,20 @@ else()
add_library(Usrsctp::Usrsctp ALIAS usrsctp)
endif()

-configure_file (
- ${PROJECT_SOURCE_DIR}/cmake/version.h.in
- ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc/version.h
+if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/include/rtc/version.h")
+ file(REMOVE "${CMAKE_CURRENT_SOURCE_DIR}/include/rtc/version.h")
+endif()
+
+file(COPY
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/version.h.in
+ DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc
)
+file(RENAME
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc/version.h.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc/version.h
+)
+
+

add_library(datachannel SHARED
${LIBDATACHANNEL_SOURCES}
30 changes: 30 additions & 0 deletions overlayports/libdatachannel/library-linkage.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b35e4b1..b052d02 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -48,7 +48,6 @@ endif()

list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
-set(BUILD_SHARED_LIBS OFF) # to force usrsctp to be built static

if(WIN32)
add_definitions(-DWIN32_LEAN_AND_MEAN)
@@ -457,11 +456,17 @@ if(WARNINGS_AS_ERRORS)
endif()
endif()

+if(BUILD_SHARED_LIBS)
install(TARGETS datachannel EXPORT LibDataChannelTargets
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
+else()
+ set_target_properties(datachannel PROPERTIES EXCLUDE_FROM_ALL 1)
+ set_target_properties(datachannel-static PROPERTIES EXCLUDE_FROM_ALL 0)
+ install(TARGETS datachannel-static EXPORT LibDataChannelTargets)
+endif()

install(FILES ${LIBDATACHANNEL_HEADERS}
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/rtc
42 changes: 42 additions & 0 deletions overlayports/libdatachannel/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO paullouisageneau/libdatachannel
REF "v${VERSION}"
SHA512 fd0d66bb932e29abc01e9f1a8b16ccb79012a7e3901e2e0f882f56ab2f090260945e1556c85ad07ef897b8c70fcdd44cdeead9955a9bca7afe1dda8900c473cc
HEAD_REF master
PATCHES
dependencies.diff
library-linkage.diff
uwp-warnings.patch
fix-cmakelists.patch
)

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
stdcall CAPI_STDCALL
INVERTED_FEATURES
ws NO_WEBSOCKET
srtp NO_MEDIA
)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
-DPREFER_SYSTEM_LIB=ON
-DNO_EXAMPLES=ON
-DNO_TESTS=ON
)

vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/LibDataChannel)
vcpkg_fixup_pkgconfig()

if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/rtc/common.hpp" "#ifdef RTC_STATIC" "#if 1")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/rtc/rtc.h" "#ifdef RTC_STATIC" "#if 1")
endif()

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")

vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
15 changes: 15 additions & 0 deletions overlayports/libdatachannel/uwp-warnings.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1b5190b..763b49e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -315,6 +315,10 @@ target_link_libraries(datachannel-static PRIVATE Usrsctp::Usrsctp plog::plog)
if(WIN32)
target_link_libraries(datachannel PUBLIC ws2_32) # winsock2
target_link_libraries(datachannel-static PUBLIC ws2_32) # winsock2
+ if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ target_compile_options(datachannel PRIVATE /wd4996)
+ target_compile_options(datachannel-static PRIVATE /wd4996)
+ endif()
endif()

if (NO_WEBSOCKET)
41 changes: 41 additions & 0 deletions overlayports/libdatachannel/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"name": "libdatachannel",
"version-semver": "0.21.2",
"port-version": 1,
"description": "libdatachannel is a standalone implementation of WebRTC Data Channels, WebRTC Media Transport, and WebSockets in C++17 with C bindings for POSIX platforms (including GNU/Linux, Android, and Apple macOS) and Microsoft Windows.",
"homepage": "https://github.com/paullouisageneau/libdatachannel",
"license": "MPL-2.0",
"supports": "!xbox",
"dependencies": [
"libjuice",
"nlohmann-json",
"openssl",
"plog",
"usrsctp",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"default-features": [
"ws"
],
"features": {
"srtp": {
"description": "Use Cisco's libSRTP for media transport.",
"dependencies": [
"libsrtp"
]
},
"stdcall": {
"description": "Use stdcall convention in callbacks"
},
"ws": {
"description": "Web Socket support"
}
}
}
52 changes: 26 additions & 26 deletions packages/streamr-dht/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -101,43 +101,43 @@ if(NOT IOS)
)

add_executable(streamr-dht-test-unit
test/unit/AddressToolsTest.cpp
test/unit/WebsocketClientConnectionTest.cpp
test/unit/WebsocketClientConnectorRpcLocalTest.cpp
test/unit/CertificateHelperTest.cpp
test/unit/ConnectedEndpointStateTest.cpp
test/unit/ConnectingEndpointStateTest.cpp
test/unit/ConnectionLockRpcLocalTest.cpp
test/unit/ConnectionLockRpcRemoteTest.cpp
test/unit/ConnectionLockStatesTest.cpp
test/unit/ConnectionLockerTest.cpp
test/unit/ConnectionManagerTest.cpp
test/unit/ConnectionsViewTest.cpp
test/unit/ConnectivityTest.cpp
test/unit/WebsocketClientConnectorRpcRemoteTest.cpp
test/unit/IdentifiersTest.cpp
test/unit/ConnectionLockRpcRemoteTest.cpp
test/unit/ConnectorFacadeTest.cpp
test/unit/ConnectionsViewTest.cpp
test/unit/WebsocketServerConnectorTest.cpp
test/unit/OffererTest.cpp
test/unit/DhtCallContextTest.cpp
test/unit/DisconnectedEndpointStateTest.cpp
test/unit/DuplicateDetectorTest.cpp
test/unit/EndpointStateInterfaceTest.cpp
test/unit/EndpointStateTest.cpp
test/unit/PendingConnectionTest.cpp
test/unit/ConnectionLockRpcLocalTest.cpp
test/unit/EndpointTest.cpp
test/unit/FakeTransportTest.cpp
test/unit/HandshakerTest.cpp
test/unit/IPendingConnectionTest.cpp
test/unit/IdentifiersTest.cpp
test/unit/IncomingHandshakerTest.cpp
test/unit/ConnectingEndpointStateTest.cpp
test/unit/ConnectedEndpointStateTest.cpp
test/unit/DisconnectedEndpointStateTest.cpp
test/unit/InitialEndpointStateTest.cpp
test/unit/OffererTest.cpp
test/unit/FakeTransportTest.cpp
test/unit/EndpointStateTest.cpp
test/unit/OutgoingHandshakerTest.cpp
test/unit/PendingConnectionTest.cpp
test/unit/RoutingRpcCommunicatorTest.cpp
test/unit/IncomingHandshakerTest.cpp
test/unit/EndpointStateInterfaceTest.cpp
test/unit/WebsocketConnectionTest.cpp
test/unit/TransportTest.cpp
test/unit/HandshakerTest.cpp
test/unit/RoutingRpcCommunicatorTest.cpp
test/unit/ConnectionLockerTest.cpp
test/unit/AddressToolsTest.cpp
test/unit/DuplicateDetectorTest.cpp
test/unit/ConnectionLockStatesTest.cpp
test/unit/ConnectivityTest.cpp
test/unit/IPendingConnectionTest.cpp
test/unit/VersionTest.cpp
test/unit/WebsocketClientConnectionTest.cpp
test/unit/WebsocketClientConnectorRpcLocalTest.cpp
test/unit/WebsocketClientConnectorRpcRemoteTest.cpp
test/unit/WebsocketClientConnectorTest.cpp
test/unit/WebsocketConnectionTest.cpp
test/unit/WebsocketServerConnectionTest.cpp
test/unit/WebsocketServerConnectorTest.cpp
test/unit/WebsocketServerTest.cpp
test/unit/ListeningRpcCommunicatorTest.cpp
)
Expand Down
9 changes: 9 additions & 0 deletions packages/streamr-libstreamrproxyclient/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,16 @@
**/*.pyo
**/*.pyd
**/.pytest_cache/
wrappers/python/dist
wrappers/python/src/streamrproxyclient/libstreamrproxyclient.dylib
wrappers/python/src/streamrproxyclient/libstreamrproxyclient.so
dist/*
**/**.dylib
**/**.so
**/wheelhouse/
*.tgz
*.so.*
**/libstreamrproxyclient.[0-9].[0-9].[0-9].dylib
dist/
dist/**
wrappers/python/src/streamrproxyclient/libstreamrproxyclient.dylib
Loading
Loading