Browse Source

Building: Added system lib CMake option info

tytan652 2 years ago
parent
commit
abb622cd4a
1 changed files with 12 additions and 2 deletions
  1. 12 2
      BUILDING.md

+ 12 - 2
BUILDING.md

@@ -1,9 +1,16 @@
 # libdatachannel - Building instructions
 # libdatachannel - Building instructions
 
 
-## Clone repository and submodules
+## Clone repository
 
 
 ```bash
 ```bash
 $ git clone https://github.com/paullouisageneau/libdatachannel.git
 $ git clone https://github.com/paullouisageneau/libdatachannel.git
+```
+
+## Init submodules
+
+This step is optional if `PREFER_SYSTEM_LIB` CMake option will be enabled.
+
+```bash
 $ cd libdatachannel
 $ cd libdatachannel
 $ git submodule update --init --recursive --depth 1
 $ git submodule update --init --recursive --depth 1
 ```
 ```
@@ -12,7 +19,10 @@ $ git submodule update --init --recursive --depth 1
 
 
 The CMake library targets `libdatachannel` and `libdatachannel-static` respectively correspond to the shared and static libraries. The default target will build tests and examples.
 The CMake library targets `libdatachannel` and `libdatachannel-static` respectively correspond to the shared and static libraries. The default target will build tests and examples.
 
 
-The option `USE_GNUTLS` allows to switch between OpenSSL (default) and GnuTLS, and the option `USE_NICE` allows to switch between libjuice as submodule (default) and libnice. The options `USE_SYSTEM_SRTP` and `USE_SYSTEM_JUICE` allow to link against the system library rather than building the submodule, for libsrtp and libjuice respectively.
+The option `USE_GNUTLS` allows to switch between OpenSSL (default) and GnuTLS, and the option `USE_NICE` allows to switch between libjuice as submodule (default) and libnice.
+
+The option `PREFER_SYSTEM_LIB` allow to link against the system library rather than building all the submodule.
+Options `USE_SYSTEM_SRTP`, `USE_SYSTEM_JUICE`, `USE_SYSTEM_USRSCTP`, `USE_SYSTEM_PLOG` and `USE_SYSTEM_JSON` allow to do the same but per submodule, for libsrtp, libjuice, libusrsctp, Plog and Nlohmann JSON respectively.
 
 
 If you only need Data Channels, the option `NO_MEDIA` allows to make the library lighter by removing media support. Similarly, `NO_WEBSOCKET` removes WebSocket support.
 If you only need Data Channels, the option `NO_MEDIA` allows to make the library lighter by removing media support. Similarly, `NO_WEBSOCKET` removes WebSocket support.