Browse Source

build-aux: Add libdatachannel and deps to flatpak

When configuring SCTP we set the following options

* build_program=OFF. Don't build example programs
* inet/inet6=OFF. IP connectivity isn't required since SCTP
  is used via WebRTC
* werror=OFF. Don't treat warnings as error when building
* enable PIC so SCTP can be used as a shared library.

Signed-off-by: pkv <[email protected]>
Sean DuBois 2 years ago
parent
commit
0c73c89571

+ 3 - 0
build-aux/com.obsproject.Studio.json

@@ -53,7 +53,10 @@
         "modules/20-x264.json",
         "modules/30-ffmpeg.json",
         "modules/40-luajit.json",
+        "modules/40-plog.json",
+        "modules/40-usrsctp.json",
         "modules/50-jansson.json",
+        "modules/50-libdatachannel.json",
         "modules/50-ntv2.json",
         "modules/50-pipewire.json",
         "modules/50-swig.json",

+ 18 - 0
build-aux/modules/40-plog.json

@@ -0,0 +1,18 @@
+{
+    "name": "plog",
+    "buildsystem": "cmake-ninja",
+    "config-opts": [
+        "-DPLOG_BUILD_SAMPLES=OFF"
+    ],
+    "cleanup": [
+        "*"
+    ],
+    "sources": [
+        {
+            "type": "git",
+            "url": "https://github.com/SergiusTheBest/plog.git",
+            "tag": "1.1.9",
+            "commit": "f47149410a4c927643148b96799f28b2d80d451b"
+        }
+    ]
+}

+ 21 - 0
build-aux/modules/40-usrsctp.json

@@ -0,0 +1,21 @@
+{
+    "name": "usrsctp",
+    "buildsystem": "cmake-ninja",
+    "//": "Disable SCTP IP code. Packets are handle by WebRTC so we don't need it",
+    "config-opts": [
+        "-Dsctp_build_shared_lib=ON",
+        "-Dsctp_build_programs=OFF",
+        "-Dsctp_inet=OFF",
+        "-Dsctp_inet6=OFF",
+        "-Dsctp_werror=OFF",
+        "-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+    ],
+    "sources": [
+        {
+            "type": "git",
+            "url": "https://github.com/sctplab/usrsctp.git",
+            "tag": "0.9.5.0",
+            "commit": "07f871bda23943c43c9e74cc54f25130459de830"
+        }
+    ]
+}

+ 20 - 0
build-aux/modules/50-libdatachannel.json

@@ -0,0 +1,20 @@
+{
+    "name": "libdatachannel",
+    "buildsystem": "cmake-ninja",
+    "config-opts": [
+        "-DNO_EXAMPLES=ON",
+        "-DNO_TESTS=ON",
+        "-DNO_WEBSOCKET=ON",
+        "-DUSE_NICE=ON",
+        "-DPREFER_SYSTEM_LIB=ON"
+    ],
+    "sources": [
+        {
+            "type": "git",
+            "url": "https://github.com/paullouisageneau/libdatachannel.git",
+            "disable-submodules": true,
+            "tag": "v0.19.0-alpha.1",
+            "commit": "f66f2813c11acaea3b20d9a5f115823777426e63"
+        }
+    ]
+}